VS2010(32bit) + WIN7(64bit) 编译出不同平台程序版本
一、X86,即一般普通PC上跑的程序版本,不用修改工程属性
二、X64
1、设置工程平台---会在工程目录下生成 X64 文件夹
在工具栏--->生成--->配置管理器 窗口
设置“活动解决方案平台”和“平台” 为X64,“平台”那里没有X64,就点击新建。
2、选择目标机器平台
在工具栏--->项目--->xx属性 窗口
选择 “配置属性”--->"链接器"--->"高级"--->"目标计算机"--->"MachineX64"
三、DLL依赖问题
1、取消依赖CLR
选择 “配置属性”--->"C/C++"--->"公共语言运行时支持" 设置为无
2、设置MFC库连接方式
“配置属性”--->"常规"--->"MFC使用"
设置为 “使用标准windows库“ 或 ”在静态库中使用MFC“
3、设置代码生成运行库
“配置属性”--->"C/C++"--->"代码生成"
设置 ”运行库” 为 "多线程/MT"
附上CSDN论坛上的一个版主的说明:
1. 确定用的是32位编译器
2. 确定不使用/clr选项:这将依赖.NET
3. 确定使用/MT静态链接CRT
这样编译出来的程序自然可以到处跑。
四、可能出现的情况
1、X64下工程平台和机器目标平台不一致报错
fatal error LNK1112: 模块计算机类型“X86”与目标计算机类型“x64”冲突——我的解决方案
五、备注
1、活动解决方案平台,这个和目标程序运行没什么关系,应该不用设置。
验证 “活动解决方案平台” 为X64 , 项目平台设置为“WIN32”,在X86 xp下还是能运行,生成程序的目录在Release下,而不是X64/Release
2、项目平台改变,目标平台也会改变
验证 “目标计算机” 设置为“MachineX64” , 切换工程平台为WIN32时,查看 “目标计算机” 设置已变成 “MachineX86”
3、X86运行X64编译出来的程序报错信息如下:
VS2010(32bit) + WIN7(64bit) 编译出不同平台程序版本的更多相关文章
- vs2010编译出的exe“应用程序无法正常启动(0xc0150002)”
今天编译出一个使用ogre1.6.5动态库的应用程序,启动时报"应用程序无法正常启动(0xc0150002)"的错误提示. 编译环境是Win10+VS2010.这个错误可以在Win ...
- Qt软件打包发布(QT5.4.1(msvc2013_64_opengl),Win7 64bit)
环境:QT5.4.1(msvc2013_64_opengl),Win7 64bit 编译方式 Qt开发的程序发布的时候经常采用两种方式:1)静态编译,可生成单一的可执行文件:2)动态编译,需同时附上需 ...
- win7 64bit+vs2010 操作注册表
注册表五个根键 HKEY_CLASSES_ROOT--管理文件系统 HKEY_LOCAL_MACHINE--管理当前系统硬件配置 HKEY_LOCAL_USER--管理系统当前用户配置 HKEY ...
- Windows下编译memcached-1.4.5(32bit和64bit)
1.简介 Memcached 是一个高性能的分布式内存对象缓存系统.它通过将数据缓存在内存中来减少对数据库和文件系统的访问,减轻数据库及操作系统的负担,提高应用系统的速度. 目前已经很多系统应用了me ...
- 再谈VS2010编译更高平台vs2012(v110),vs2015(v140)的objectARX程序
前段时间我贴了一篇vs2010批量编译vc6~vs2008的ARX版本,实际上那一篇是我在研究vs2010编译v110,v140平台的附带收获,正应了那句话,有心栽花花不开,无心插柳柳成荫,因为vs2 ...
- 使用AS编译jni文件无法编译出arm64-v8a,x86_64和mips64平台的.so文件的解决方法
我用的插件版本是:classpath 'com.android.tools.build:gradle-experimental:0.4.0',AS集成和使用ndk编译项目参考官方demo:https: ...
- Win7 64bit下32bit的 ODBC 数据源问题
win764位有数据源,但是如果我们在win7 64bit中使用32位的数据源的时候,我们就需要对其进行配置,很有趣的是,64为的数据源我们可以在控制面板——系统与安全——管理工具——数据源,进入可对 ...
- 【PC-x86-x64】JDK 32bit与64bit的区别及x64 PC的发展历程【转】
一次偶然分析的机会: 在进行Minecraft也就是所谓的我的世界游戏的时候,在对局域网进行开放的时候,我的是64bit的JDK,而我同学的是32bit的JDK,所以在进行局域网链接的时候就会出现In ...
- Linux Kernel sys_call_table、Kernel Symbols Export Table Generation Principle、Difference Between System Calls Entrance In 32bit、64bit Linux
目录 . sys_call_table:系统调用表 . 内核符号导出表:Kernel-Symbol-Table . Linux 32bit.64bit环境下系统调用入口的异同 . Linux 32bi ...
随机推荐
- 《Spring2之站立会议6》
<Spring2之站立会议6> 昨天,向主界面中加入语音功能部分的代码: 今天,查相关资料解决debug: 遇到问题,一些问题是得到解决了,但是一些还未被解决.
- IT职业道路的苦与甜
每当有人问起你学的是什么专业啊?学的怎么样啊?好不好学啊?等等一些类似的问题.我都会默默的说一句,会者不难,难者不会.当然现在的我还处于菜鸟级别,不过我相信在不久后的一天我一定会脱离菜鸟的行列,然后挺 ...
- java equals()方法的注意事项
1.在写代码的时候,我们有时候需要判断两个相同类的对象的值是否全部相等,很多人想到的就是equals()方法,但是equals方法真的是可以比较吗?其实equals方法比较的并不是两个对象的值,它只是 ...
- 使用百度地图api可视化聚类结果
1.写在前面 上接YFCC 100M数据集分析笔记,在对聚类出的照片GEO集聚类后,为了方便检测聚类结果,我们显示直接采用了 python 的 matplotlib 库以经纬度为坐标画出聚类结果,但发 ...
- Mysql中实现递归查询
1.常规表字段 id,pid,lev,name 2.sql语句 DELIMITER // DROP PROCEDURE IF EXISTS Pro_GetColumnOrg//CREATE PROCE ...
- CSS和JS引用图片(资源)的路径问题
做项目时遇到了这个问题,特此写个笔记记一下
- 【转载】Vue项目中的文件/文件夹命名规范
文件或文件夹的命名遵循以下原则: index.js 或者 index.vue,统一使用小写字母开头的(kebab-case)命名规范 属于组件或类的,统一使用大写字母开头的(PascalCase)命名 ...
- Win10系统 安装Anaconda+TensorFlow+Keras
小白一枚,安装过程走了很多坑,前前后后安装了好几天,因此记录一下. 一.安装anaconda 官方下载地址:https://repo.continuum.io/archive/ 选项相应的版本安装,我 ...
- js仿QQ拖拽删除
原生js实现仿QQ拖拽删除交互,无需任何依赖. 项目演示请看这里, gitHub请移步这里. 由于源码很长,所以贴到最下面了. 效果截图如下: 核心思想呢,就是点击圆点的时候全屏覆盖个canvas,在 ...
- Crowd Control(输出不在最大值最小化的最短路上的边)
题意: 就是求完最大值最小化 然后输出在这条最大值最小化的最短路上的点的不在最短路上的边,emm.... 解析: 很明显,先套spfa最大值最小化模板,emm... 在更新d的时候 用一个pre去记 ...