模块机类型“THUMB”与目标机器类型“ARM”冲突;

发布于 2024-09-10 17:40:43 字数 417 浏览 3 评论 0原文

我有一个运行ARMV4(Pocket PC 2003)的Windows Mobile应用程序,

我们得到了一个新设备XXXCE6(ARMV4I),我们需要为其编译应用程序,我们按照以下步骤操作:

  1. 安装Device SDK
  2. Build->;配置管理器 从活动解决方案平台中选择 NEW
  3. 对于 New Solutin 平台,我们选择了 XXXCE6 (ARMV4I) ,对于复制设置,我们选择了 Pocket PC 2003 ,并选中创建新项目平台 进而 清洁解决方案 重建解决方案 我收到此错误:

coredll.lib(COREDLL.dll) : fatal error LNK1112: 模块机器类型“THUMB”与目标机器类型“ARM”冲突

有什么想法吗?

谢谢

I had a windows mobile application running for ARMV4 (Pocket PC 2003)

We got a new device XXXCE6 (ARMV4I), we need to compile the application for it, we followed these steps:

  1. install the Device SDK
  2. Build-> configurartion manager
    choose NEW from active solution platform
  3. for New Solutin platform we have chosen XXXCE6 (ARMV4I) , and for copy settings we have chosen Pocket PC 2003 , and check create new projects platform
    and then
    Clean solutions
    Rebuild Solution I got this error:

coredll.lib(COREDLL.dll) : fatal error LNK1112: module machine type 'THUMB' conflicts with target machine type 'ARM'

Any IDEA?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

画骨成沙 2024-09-17 17:40:43

添加新配置永远不会起作用 - 我认为工具团队从未真正尝试过。它在 eVC 3.0 或 4.0 中不起作用,在 Studio 中仍然不起作用。

使用应用程序向导创建一个新项目,选择您的 SDK。完成后,只需使用“添加现有”即可添加所有代码。

顺便说一句,您的应用程序可能可以使用旧项目和二进制文件运行。 ARMv4i 将毫无问题地运行 ARMv4 二进制文件。唯一的潜在问题是,如果您要从 Pocket PC 转向通用 CE 设备。如果应用程序使用任何 Pocket PC 特定的 API,这些调用将在 CE 下失败。

Adding a new configuration never works - it's something the tools team I think never actually tried. It didn't work in eVC 3.0 or 4.0 and still doesn't in Studio.

Create a new project using the app wizard, selecting your SDK. When you are done, just use "Add Existing" to add all of your code in.

BTW, your app can probably run using the old project and binaries anyway. ARMv4i will run ARMv4 binaries without any problem. The only potential issue is that if you're moving from a Pocket PC to a generic CE device. If the app used any Pocket PC specific APIs, those call will fail under CE.

予囚 2024-09-17 17:40:43
  1. 右键单击出现此错误的项目。

  2. 转到项目属性 ->链接器->命令行

  3. 将 MACHINE:ARM 更改为 MACHINE:THUMB

参考

  1. Right click on the project which is giving this error.

  2. Goto Project properties -> Linker -> Command Line

  3. change MACHINE:ARM to MACHINE:THUMB

reference

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文