之前在很老版本的时候弄过,现在应用要升x64了,出现各种内存异常,后来发现是libcurl有移位操作,为了兼容x64,找了最新版本的搞一搞,留下此笔记。
【openssl的做法】
openssl-1.0.2n
在前述curl-7.58.0的文件夹中,找到project文件夹,里面有build-openssl.bat脚本,很方便。具体用法如下。
1、先用Visual Studio Command Prompt x86/x64对应
执行脚本:build-openssl.bat vc9 x86 debug ..\..\openssl-1.0.2n
执行脚本:build-openssl.bat vc9 x86 release ..\..\openssl-1.0.2n
执行脚本:build-openssl.bat vc9 x64 debug ..\..\openssl-1.0.2n
执行脚本:build-openssl.bat vc9 x64 release ..\..\openssl-1.0.2n
搞定!留着备用。
【zlib的做法】
zlib-1.2.11
1、先用Visual Studio Command Prompt x86/x64对应
运行contrib\masmx64\bld_ml64.bat
运行contrib\masmx86\bld_ml32.bat
然后他们会生成各自的*.obj备用
2、打开contrib\vstudio\vcX\zlibvc.sln 编译你需要的release\debug\x86\x64版本
3、产出x64\x86的文件夹
搞定!zlib就完成了
【libcurl的做法】
在curl-7.58.0\projects\Windows\VC9\lib下,有一个libcurl.sln可以直接用
只留下要用到的配置,其他都可以删掉。
下面说要修改的具体配置:(比如要用DLL Debug - DLL OpenSSL这一种套)
1、在配置中,链接器->常规->附加库依赖项,这里要把路径中openssl改为你的文件夹名openssl-1.0.2n。
2、在配置中,C++->常规->附加包含目录,这里要把路径中openssl改为你的文件夹名openssl-1.0.2n。
然后,就可以编译啦。通过的话说明成功了。
【最后】
为了便于自己的项目使用,可以把libcurl.vcproj加到自己的项目中。