So i have came along with cURL as a very nice library and working very fine in OSX. But on windows now i have got big troubles with getting ready with this library. I googled now for about 2 days and tried over a dozen (in detail) different ways to get this ready. Without any success at all.
Here are some ways I basically tried:
Successfully added 'curl 7.30.0.2' to test.
it also seemed nice, but compiling simple.c
leads to a bunch of unresolved external symbol
linker errors. But a solution is provided: Project > Properties > VC++ Properties > "Include Directories"
and Project > Properties > VC++ Properties > "Library Directories"
Project > C/C++ > General > "Additional Include Directories"
and in Project > Linker > General > "Additional Library Directories"
I desperately added the \\packages\\ path from my project folder. libcurl.lib;libeay32.lib;ssleay32.lib;Ws2_32.lib;libssh2.lib;zlib.lib;wldap32.lib;
to Project > Linker > Input > "Additional Dependencies"
. unresolved external symbol
errors are gone! Therefore I get just one error saying cannot open file 'libcurl.lib'
. What can I do here? I am pretty new to all that. But I am trying really hard now to get this finally to work. So what can I do?
I work with Visual Studio 2013 Community Edition. The currently most recent version of cURL is 7.42.1
. Any help is highly welcome!
Had problems myself, finally got it working now. I downloaded curl-7.42.1.zip from the official website . Within the archive you'll find the source code and winbuild/BUILD.WINDOWS.txt, which basically contains the instructions I followed. I'll assume that it has been unzipped to C:\\curl-7.42.1.
Open the Visual Studio command prompt located at
C:\\Program Files (x86)\\Microsoft Visual Studio 12.0\\Common7\\Tools\\Shortcuts
This automatically sets the environment variables needed to use Visual Studio tools like the compiler. Then move to the winbuild directory and call
nmake /f Makefile.vc mode=dll
as described in the text file I mentioned above.
That will create the directory
C:\\curl-7.42.1\\builds\\libcurl-vc-x86-release-dll-ipv6-sspi-winssl
containing libcurl.dll, libcurl.lib and the necessary header files. Let's rename it to C:\\curl-7.42.1\\builds\\release
:'D
VC++ Directories > Include directories
and add C:\\curl-7.42.1\\builds\\release\\include
C:\\curl-7.42.1\\builds\\release\\lib
to VC++ Directories > Library directories
. Linker > Input > Additional Dependencies
and add libcurl.lib
. C:\\curl-7.42.1\\builds\\release\\bin\\libcurl.dll
to your project folder. That should do the trick! :D If you want to use cURL in debug mode, you can do almost the same, recompile using nmake /f Makefile.vc mode=dll debug=yes
, go to your project's properties, add the newly created directory paths (changing libcurl.lib to libcurl_debug.lib) and you should be done.
I had the same issue. I downloaded the curl from https://github.com/curl/curl . you can actually compile it directly with Visual Studio 2013 (but be careful with parameters setting: x64 with release). The major difference is that it gives you libcurl_imp.lib. Then all you have to do is to set the environment variables as described above. Just want to mention, you will have to use libcurl_imp.lib rather than libcurl.lib in the additional dependencies (I suspect this change is because of the new version of curl).
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.