skywind3000 / asyncnet Goto Github PK
View Code? Open in Web Editor NEWAsyncNet
License: Apache License 2.0
AsyncNet
License: Apache License 2.0
我用 Mingw-w64 64bit 编译的,报了一个warning 和一些错误 导致 编译失败,编译报错好像是没有连接 wsock 库。
那个 warning 需要处理吗?谢谢!
compiling ...
source/AsyncExport.cpp
source/TraceLog.cpp
system/imembase.c
system/imemdata.c
system/inetbase.c
system/inetcode.c
system/inetkcp.c
system/inetnot.c
system/iposix.c
system/itoolbox.c
system/ineturl.c
In file included from system/ineturl.h:12,
from system/ineturl.c:10:
In function 'it_sresize',
inlined from 'it_strcpyc' at system/imemdata.h:530:3,
inlined from 'ihttplib_request' at system/ineturl.c:1036:4:
system/imemdata.h:216:4: warning: 'memcpy' forming offset [49, 56] is out of the bounds [0, 48] of object 'request' with type 'ivalue_t' {aka 'struct IVALUE'} [-Warray-bounds]
memcpy(&(v->param), it_ptr(v), newsize);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
system/ineturl.c: In function 'ihttplib_request':
system/ineturl.c:995:11: note: 'request' declared here
ivalue_t request;
^~~~~~~
system/isecure.c
linking ...
build/objs/win32/inetbase.o:inetbase.c:(.text+0x6a5): undefined reference to __imp_select' build/objs/win32/inetbase.o:inetbase.c:(.text+0x7e8): undefined reference to
__imp_htonl'
build/objs/win32/inetbase.o:inetbase.c:(.text+0xac8): undefined reference to __WSAFDIsSet' build/objs/win32/inetbase.o:inetbase.c:(.text+0xae2): undefined reference to
__WSAFDIsSet'
build/objs/win32/inetbase.o:inetbase.c:(.text+0xafc): undefined reference to __WSAFDIsSet' build/objs/win32/inetbase.o:inetbase.c:(.text+0xbab): undefined reference to
__WSAFDIsSet'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1b4b): undefined reference to __imp_socket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1b8d): undefined reference to
__imp_htonl'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1ba3): undefined reference to __imp_bind' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1bb5): undefined reference to
__imp_closesocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1bde): undefined reference to __imp_getsockname' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1bfe): undefined reference to
__imp_listen'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1c2d): undefined reference to __imp_connect' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1c40): undefined reference to
__imp_closesocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1c5a): undefined reference to __imp_accept' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1c7e): undefined reference to
__imp_getpeername'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1cc6): undefined reference to __imp_closesocket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x1ce5): undefined reference to
__imp_closesocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x1d01): undefined reference to __imp_closesocket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2b46): undefined reference to
__imp_socket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2b5a): undefined reference to __imp_closesocket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2b8b): undefined reference to
__imp_connect'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2bbe): undefined reference to __imp_connect' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2bd6): undefined reference to
__imp_shutdown'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2bfb): undefined reference to __imp_bind' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2c2e): undefined reference to
__imp_bind'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2c46): undefined reference to __imp_listen' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2c8c): undefined reference to
__imp_accept'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2cd3): undefined reference to __imp_accept' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2cf3): undefined reference to
__imp_WSAGetLastError'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2d06): undefined reference to __imp_send' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2d16): undefined reference to
__imp_recv'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2d52): undefined reference to __imp_sendto' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2ddf): undefined reference to
__imp_recvfrom'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2e2a): undefined reference to __imp_recvfrom' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2e46): undefined reference to
__imp_ioctlsocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2e56): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2e84): undefined reference to
__imp_getsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2ea8): undefined reference to __imp_getsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2efc): undefined reference to
__imp_getsockname'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2f43): undefined reference to __imp_getsockname' build/objs/win32/inetbase.o:inetbase.c:(.text+0x2f9c): undefined reference to
__imp_getpeername'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x2fe3): undefined reference to __imp_getpeername' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3065): undefined reference to
__imp_setsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x308d): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x30bf): undefined reference to
__imp_ioctlsocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x313d): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x316d): undefined reference to
__imp_setsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x319f): undefined reference to __imp_ioctlsocket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x325e): undefined reference to
__imp_select'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x32cd): undefined reference to __imp_send' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3312): undefined reference to
__imp_WSAGetLastError'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x335d): undefined reference to __imp_recv' build/objs/win32/inetbase.o:inetbase.c:(.text+0x33a2): undefined reference to
__imp_WSAGetLastError'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x346f): undefined reference to __imp_gethostname' build/objs/win32/inetbase.o:inetbase.c:(.text+0x347e): undefined reference to
__imp_gethostbyname'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x362e): undefined reference to __imp_select' build/objs/win32/inetbase.o:inetbase.c:(.text+0x397f): undefined reference to
__imp_setsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x39d4): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3a35): undefined reference to
__imp_WSAIoctl'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3a85): undefined reference to __imp_htonl' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3aa6): undefined reference to
__imp_ntohl'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3ac6): undefined reference to __imp_htons' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3aea): undefined reference to
__imp_ntohs'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3b53): undefined reference to __imp_htonl' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3b60): undefined reference to
__imp_htons'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3bcf): undefined reference to __imp_gethostbyname' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3c05): undefined reference to
__imp_inet_addr'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3c85): undefined reference to __imp_htons' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3da7): undefined reference to
__imp_ntohs'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3e0d): undefined reference to __imp_ntohl' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3e2c): undefined reference to
__imp_ntohs'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3efc): undefined reference to __imp_WSAStartup' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3f1e): undefined reference to
__imp_WSACleanup'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3f86): undefined reference to __imp_socket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x3fb7): undefined reference to
__imp_socket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x3fe2): undefined reference to __imp_bind' build/objs/win32/inetbase.o:inetbase.c:(.text+0x4043): undefined reference to
__imp_WSAIoctl'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x408f): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x4108): undefined reference to
__imp_setsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x4134): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x415a): undefined reference to
__imp_ioctlsocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x4192): undefined reference to __imp_WSAGetLastError' build/objs/win32/inetbase.o:inetbase.c:(.text+0x41e2): undefined reference to
__imp_closesocket'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x41fa): undefined reference to __imp_closesocket' build/objs/win32/inetbase.o:inetbase.c:(.text+0x4251): undefined reference to
__imp_setsockopt'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x427e): undefined reference to __imp_setsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x42f9): undefined reference to
__imp_select'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x4335): undefined reference to __imp_getsockopt' build/objs/win32/inetbase.o:inetbase.c:(.text+0x6f52): undefined reference to
__imp_timeKillEvent'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x7013): undefined reference to __imp_timeSetEvent' build/objs/win32/inetbase.o:inetbase.c:(.text+0x70e5): undefined reference to
__imp_timeKillEvent'
build/objs/win32/inetbase.o:inetbase.c:(.text+0x71f2): undefined reference to __imp_timeKillEvent' build/objs/win32/inetcode.o:inetcode.c:(.text+0x53b): undefined reference to
__imp_select'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x586): undefined reference to __imp_recv' build/objs/win32/inetcode.o:inetcode.c:(.text+0x5b2): undefined reference to
__imp_WSAGetLastError'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x7bf): undefined reference to __imp_select' build/objs/win32/inetcode.o:inetcode.c:(.text+0x7ef): undefined reference to
__imp_send'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x807): undefined reference to __imp_WSAGetLastError' build/objs/win32/inetcode.o:inetcode.c:(.text+0x8fe): undefined reference to
__imp_gethostname'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x9bf): undefined reference to __imp_gethostbyaddr' build/objs/win32/inetcode.o:inetcode.c:(.text+0x3bc1): undefined reference to
__imp_socket'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x3bfb): undefined reference to __imp_socket' build/objs/win32/inetcode.o:inetcode.c:(.text+0x3c8f): undefined reference to
__imp_listen'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x4e85): undefined reference to __imp_send' build/objs/win32/inetcode.o:inetcode.c:(.text+0x51e3): undefined reference to
__imp_send'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x63e1): undefined reference to __imp_htons' build/objs/win32/inetcode.o:inetcode.c:(.text+0x67bc): undefined reference to
__imp_connect'
build/objs/win32/inetcode.o:inetcode.c:(.text+0x6823): undefined reference to __imp_select' build/objs/win32/inetcode.o:inetcode.c:(.text+0x6962): undefined reference to
__imp_WSAGetLastError'
build/objs/win32/inetnot.o:inetnot.c:(.text+0xde): undefined reference to __imp_htons' build/objs/win32/inetnot.o:inetnot.c:(.text+0x142): undefined reference to
__imp_htons'
build/objs/win32/inetnot.o:inetnot.c:(.text+0xc5c): undefined reference to __imp_ntohs' build/objs/win32/inetnot.o:inetnot.c:(.text+0xd37): undefined reference to
__imp_ntohs'
build/objs/win32/inetnot.o:inetnot.c:(.text+0xda5): undefined reference to __imp_ntohs' build/objs/win32/inetnot.o:inetnot.c:(.text+0xdb8): undefined reference to
__imp_ntohs'
build/objs/win32/ineturl.o:ineturl.c:(.text+0x67d): undefined reference to `__imp_socket'
collect2.exe: error: ld returned 1 exit status
您好,韦老师,请教点用 c 设计的问题。您在知乎上谈过 c 的思维,是自底向上的,逐步迭代的,强调可拆分性和简单性,这也成为了我学习设计的指导方法。
我也拜读了您的网络库,我发现我太不喜欢您那样 abcd.h:abcd.c = 1:1 的形式,因为这样给用户的 .h 会暴露太多信息。我更喜欢 libevent2 那么,分为内部使用 abcd-internal 和提供给外部使用的 include/abcd.h 。但是这样无疑让代码文件变多,也没有原来那么直观, 你认为这样是否是画蛇添足?或者说您觉得 libevent2 的设计怎么样?
很想听听您的建议...
IUINT32 interval;
IUINT32 current;
IUINT32 millisec;
IUINT32 jiffies;
those variables don't have enough space to store longer time.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.