我有一些关于在Visual Studio 2015中将libcurl静态链接到我的Win32控制台项目的问题。我一直在努力解决这个问题4-5个小时,我无法理解。我希望有人可以帮我解释我做错了什么。
使用" LIB RELEASE"编译libcurl.lib
(x64)配置。然后我将include头文件库和库移动到我自己的win32控制台项目(x64)并按如下方式设置:
VC++ => Include directories -> $(SolutionDir)includes (contains curl headers)
=> Library directories -> $(SolutionDir)libraries (contains libcurl.lib)
Linker => Additional Library Directories -> $(SolutionDir)libraries
=> Input -> libcurl.lib
当我不使用任何curl函数时,我可以正常编译,但是当我在自己的源代码中调用curl_easy_init()
并编译时,它会给我以下错误:
Severity Code Description Project File Line Suppression State
Error LNK2019 unresolved external symbol __imp_curl_easy_cleanup referenced in function "void __cdecl ee(void)" (?ee@@YAXXZ) Console C:\Users\Ik\Documents\Visual Studio 2015\Projects\SDK4\Console\Console.obj 1
Error LNK2019 unresolved external symbol __imp_curl_easy_init referenced in function "void __cdecl ee(void)" (?ee@@YAXXZ) Console C:\Users\Ik\Documents\Visual Studio 2015\Projects\SDK4\Console\Console.obj 1
我期望curl包在我的项目中静态链接,我可以正确使用卷发函数。
卷曲7.52.1
Microsoft Windows [版本10.0.14393]
答案 0 :(得分:0)
在你静态链接libcurl的项目中,尝试添加这个定义:CURL_STATICLIB
这决定了如何在curl / curl.h中解析导入/导出宏