C++ libcurl首选的构建方法
我正在构建libcurl以用于我正在进行的一个项目,在阅读了一些关于如何正确构建它的内容后,我发现了两种方法 方法1:C++ libcurl首选的构建方法,c++,c,curl,libcurl,winapi,C++,C,Curl,Libcurl,Winapi,我正在构建libcurl以用于我正在进行的一个项目,在阅读了一些关于如何正确构建它的内容后,我发现了两种方法 方法1: (在根目录中编辑Makefile以将“VC=vc6”更改为“VC=vc10”) C:\dev\curl-7.25.0>设置ZLIB\u PATH=C:\dev\ZLIB-1.2.6 C:\dev\curl-7.25.0>nmake vc zlib 方法二: (将zlib所需的文件放入../deps并编辑Makefile以使用\u IDN=无实际工作) C:\dev\curl-7
(在根目录中编辑Makefile以将“VC=vc6”更改为“VC=vc10”)
C:\dev\curl-7.25.0>设置ZLIB\u PATH=C:\dev\ZLIB-1.2.6
C:\dev\curl-7.25.0>nmake vc zlib
方法二:(将zlib所需的文件放入../deps并编辑Makefile以使用\u IDN=无实际工作)
C:\dev\curl-7.25.0\winbuild>nmake/f Makefile.vc mode=static vc=10 WITH_ZLIB=sta
tic DEBUG=no USE\u IDN=no WITH\u DEVEL=../deps
两者都可以正常工作
可怕的是,输出的libcurl.lib文件大小不同。
那么,有没有任何libcurl专家可以告诉我这两种构建方法之间的区别,以及推荐使用哪种方法呢?因此,到目前为止,我发现方法1要求您将应用程序链接到
Ws2_32.lib
和Wldap32.lib
,而方法2没有(可能是增加尺寸的原因)
方法1的输出可执行文件也稍小一些
我真的很好奇是否还有其他区别。也许有一种方法针对静态库编译(输出更大),而另一种方法针对动态库编译(输出更小)?@smink Nope,这两种方法都绝对是静态库。运行“curl-V”验证它们是否具有相同的功能集