c++ - 模块机器类型 'THUMB' 与目标机器类型 'ARM' 冲突

标签 c++ windows-mobile mfc pocketpc

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

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

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

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

有什么想法吗?

谢谢

最佳答案

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

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

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

关于c++ - 模块机器类型 'THUMB' 与目标机器类型 'ARM' 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3315507/

相关文章:

c# - 在 Compact Framework 中安全删除文件

c++ - 如何将 std::string (YYYY-MM-DD) 解析为 COleDateTime 对象?

c++ - MFC 静态链接未解析的外部符号

c++ - 如何在类中定义 sort() 中使用的 cmp 函数,该函数可以接收额外的、对象指定的信息?

c++ - 在 C++ 程序中链接 cython 模块

c++ - 按钮控件需要一些时间才能在对话框中禁用

c++ - 由泛型函数设置的数组绑定(bind)

windows-mobile - 是否可以在 Windows CE 上运行 java 程序?

visual-studio-2008 - 将目标设备从 windows mobile 5 更改为 WM6 Professional Visual Studio 2008

c - 如何在 MFC 应用程序中使用 CMenu?