您的位置:首页 > 理论基础

vc++ 2010 CURL库64位编译时遇到“模块计算机类型“x86”与目标计算机类型“x64”冲突”的解决办法

2017-07-10 14:30 1586 查看
最近工作中使用到了Curl库,git clone https://github.com/curl/curl.git下载代码。源代码路径下winbuild目录包含有BUILD.WINDOWS.txt文件,这个就是Visual C++编译的说明文件了。项目中使用到了openssl,首先复制openssl对应的include、lib到deps路径对应子目录下。根据需要配置编译选项:nmake /f makefile.vc mode=static VC=10 ENABLE_IDN=no debug=no MACHINE=x86 RTLIBCFG=static with_ssl=static

顺利生成了libcurl_a.lib。x64配置编译选项:nmake
/f makefile.vc mode=static VC=10 ENABLE_IDN=no debug=no MACHINE=x64 RTLIBCFG=static with_ssl=static 这个失败了,file.obj的计算机类型“x86”与目标计算机类型“x64”冲突。


字面理解file.obj还是32位编译的。检查cl没找到对应x64的编译选项。百度有人讨论,需要执行下vcvarall.bat,实验vcvarsall.bat 
x86_amd64 设置好环境。nmake /f makefile.vc mode=static VC=10 ENABLE_IDN=no debug=no
MACHINE=x64 RTLIBCFG=static with_ssl=static 成功生成64位的libcurl_a.lib。在两套不同的环境下分别生成x86、x64程序看来是正解了,good,今天又有了一点进步
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Curl
相关文章推荐