最著名的问题-------本机编译好的程序无法在没有装VC的机子上运行

由于VC++2005默认采用动态链接运行时库,导致编译好的程序在运行时依赖于本机的运行时库,当然移植到别的机子上就不能运行了。真不知道微软 当初怎么想的,难道把所有人都当程序员么,自己写的程序都是给自己用的?呵呵。不过微软犯迷糊我们不能跟着迷糊,这个问题解决起来也不难。就是采用静态编 译就可以了。

具体如下:

对于一般的win32控制台程序,可以这样设置:

点击"项目"--- "属性",打开项目属性页,点击 "配置属性"--- "C/C++"--- "代码生成",将此页面右边的 "运行时库"由默认的 "多线程DLL(/MD)"改为 "多线程(/MT)"或 "多线程调试(/MTD)"即可。       不过一般情况下生成release版本的应用程序时选 "多线程(/MT) "即可,因为这样生成的exe程序较小。       而如果选了 "多线程调试(/MTD) ",则由于加入了大量的调试信息而使生成的exe程序会增大好几倍。

不过若是MFC程序,这种方法在VC++2005 express中却行不通。

改为静态链接后,反而提示至今我也没有找到解决的办法。不过我现在对于MFC也是刚刚接触,无奈~~~

cl: 命令行 error D8016 :“/MTd”和“/clr:pure”命令行选项不兼容
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值