您的位置:首页 > 其它

关于win64位系统与32位开发平台

2017-01-17 10:50 330 查看
:本人为 windows7 64位、vs2013 64位

       由于之前一直用32位系统及win32的平台开发,没细细考虑过x64与x86的平台区别。现在,我按默认的vs2013的win32平台开发,其中一些配置文件也是64位的,比如websocketpp、boost等等,经过编译安装后,用在win32的环境下没出现问题,也就是说一切通过,大抵是它们是编译安装的,所以是根据其编译的环境来配置的文件,所以肯定是没问题的吧。

       由于我的mysql不能正确配置到我的开发环境,所以我重新安装了64位的mysql,出现了“无法解析的外部符号”,配置无误,我只能想到64位与32位的问题,所以,我改动了vs2013的环境配置:

         1、点击《项目》->《属性》》->《配置管理器》->《活动解决方案平台》,在下拉框里选择《新建》,在《键入或选择平台》处选中“X64”,然后“确定”返回;

         2、点击《项目》->《配置属性》》->《链接器》->《高级》,在右边《目标计算机》选择“MachineX64”,然后“确定”返回;

        出现jsoncpp的.obj文件提示 “fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突”,这想必是因为我的jsoncpp是32位的???可我的jsoncpp编译安装环境也如boost一致,唯一不同的是boost很确定是64位,而jsoncpp未能下载到能很确定是64位的源代码,即使在我下载的jsoncpp早编译安装后测试代码能通过。

        由于我的项目已到后期,改动很大,更何况确实不能明确上面的原因,所以我将x64环境改回win32,安装32位的mysql,一起又OK啦。

       提醒各位及自己,着手开发时环境的选择、及安装软件支持包时x86或x64必须明确,以免开发中后期进退两难。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: