fatal error LNK1112: 模块计算机类型“THUMB”与目标计算机类型“ARM”冲突

本文介绍了在WindowsMobile5.0环境下,针对ARMV4I平台进行开发时遇到的程序链接错误问题及其解决方法。提供了两种解决方案:一是正确配置项目的SDK;二是调整链接器设置。

http://blog.youkuaiyun.com/wanglei5695312/article/details/5675809

我的程序可以在Pocket PC 2003 (ARMV4)下运行通过,可是一到Windows Mobile 5.0 Pocket PC SDK (ARMV4I)下运行就提示如下错误:

1>------ 已启动生成: 项目: oilSurvey, 配置: Debug Windows Mobile 5.0 Pocket PC SDK (ARMV4I) ------
1>正在链接...
1>mfc80ud.lib(MFC80UD.DLL) : fatal error LNK1112: 模块计算机类型“THUMB”与目标计算机类型“ARM”冲突
1>生成日志保存在“file://d:/杨源园/VC.NET/oilSurvey PDA调试用/oilSurvey/Windows Mobile 5.0 Pocket PC SDK (ARMV4I)/Debug/BuildLog.htm”
1>oilSurvey - 1 个错误,0 个警告
========== 生成: 0 已成功, 1 已失败, 0 最新, 0 已跳过 ==========
========== 部署: 0 已成功, 0 已失败, 0 已跳过 ==========

这是怎么回事呀?

解决办法:
1.新建项目时,在"平台"->"选择要添加到当前项目中的 Platform SDK。"中,把"已安装的 SDK"全部添加到"选定的 SDK"
2.在"属性页"->"配置属性"->"链接器"->"命令行"中的"附加选项"里,有如下命令:"/subsystem:windowsce,4.20 /machine:ARM /ARMPADCODE",在其后加入命令:" /MACHINE:THUMB",即附加选项现在内容为:" /subsystem:windowsce,4.20 /machine:ARM /ARMPADCODE /MACHINE:THUMB",确定即可.

以上两种方法,是在两个不同的项目中遇见的,该帖提问时遇见的问题是通过第一种方法解决的,但最近又遇见同样问题,第一种方法无效,第二种能够解决.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值