2016-03-04 149 views
-1

我一直在阅读整个互联网,并尝试了很多东西,但我仍然无法找到问题所在。我试图使用的libcurl作为一个静态库,但这里是我的编译器说:无法编译libcurl的静态库

1> libcurl.lib(cookie.obj):错误LNK2001:解析外部符号__imp__fgets 1> libcurl.lib(NETRC .OBJ):错误LNK 2001:解析外部符号__imp__fgets 1> libcurl.lib(cookie.obj):错误LNK 2001:解析外部符号__imp__fputs 1> libcurl.lib(ftp.obj):错误LNK 2001:解析外部__imp____stdio_common_vsscanf 符号1> libcurl.lib(rtsp.obj):error LNK2001:无法解析的外部符号__imp____stdio_common_vsscanf 1> libcurl.lib(socks.obj):error LNK2001:无法解析的外部符号__imp____stdio_common_vsscanf 1> libcurl.lib(http_proxy.obj):e RROR LNK2001:无法解析的外部符号__imp____stdio_common_vsscanf

等等..

我已经加入CURL_STATICLIB给予处理机,甚至连接使用这些库:libcurl.lib openssl.lib,libssh2.lib,zlib的。 lib,wsock32.lib,wldap32.lib,ws2_32.lib,但没有一个工作。

我真的很想用它作为一个静态库(没有在程序文件夹中的.dll),所以我将不胜感激,如果有人可以帮助我!

PS。我正在使用VS2015

+0

希望你的意思是'CURL_STATICLIB'而不是'CRUL_STATICLIB'。 –

+0

是的,这是一个错误的。 – usr1408

回答

4

在Visual Studio命令提示符中设置RTLIBCFG = static。这将设置编译器为/ MT和/ MTd构建。这显然是问题所在。希望有同样问题的人会从中受益!干杯!