标题:调用win32 api后连接出错的问题
作者:mhmdanger
日期:2006-11-24 08:17
内容:
我在windows平台下写了一段程序,包括了头文件,然后调用了recv函数,编译时通过了,我用如下命令进行连接:gcc -shared -o apihook.dll apihook.o -Wl,--out-implib,libapihook.a
在连接的时候却出错了:undifined reference to 'recv@16'
我查看了ws2_32.dll发现其输出函数名为recv而非recv@16, 我该如何做呢?
#1 [fanyu 11-24 14:11]
楼主您好,您引用导出函数时加上extern "C",试试看。
#2 [mhmdanger 11-24 15:27]
引用第1楼fanyu于2006-11-24 14:11发表的“”:
楼主您好,您引用导出函数时加上extern "C",试试看。
谢谢您的回复,recv函数在winsock2.h中这么定义的:int PASCAL recv(SOCKET,char*,int,int);
您的意思是我需在这个前面加上extern "C" ?
还有就是我忘了说了哈,我用的 C 编译器,而没有用到其C++版编译器,加上extern "C"好像编译时候要出错。