2010-07-23 111 views
1

我有一個Windows Mobile的應用程序運行ARMV4(掌上電腦2003)模組整機型「經驗」與目標機器型「ARM」衝突

我們得到了一個新的設備XXXCE6(ARMV4I),我們需要編譯應用它,我們遵循下列步驟操作:

  1. 安裝設備SDK
  2. 建設 - > configurartion經理 從積極的解決方案平臺
  3. 選擇新的,我們選擇了XXXCE6(ARMV4I)新Solutin平臺,對於c OPY設置我們選擇的Pocket PC 2003,併爲您創建新的項目平臺 然後 清潔解決方案 重建解決方案,我得到這個錯誤:

coredll.lib(coredll.dll中):致命錯誤LNK1112:模塊機類型'THUMB'與目標機器類型衝突'ARM'

任何IDEA?

感謝

回答

2

添加一個新的配置永遠不會奏效 - 這件事情的工具團隊我覺得從來沒有真正嘗試過。它在eVC 3.0或4.0中不起作用,仍然不在Studio中。

使用應用程序嚮導創建一個新項目,選擇您的SDK。完成後,只需使用「Add Existing」即可添加所有代碼。

順便說一下,您的應用程序可能可以使用舊項目和二進制文件。 ARMv4i將運行ARMv4二進制文件,沒有任何問題。唯一的潛在問題是,如果你從一臺Pocket PC移動到一個通用的CE設備。如果應用程序使用任何Pocket PC特定的API,則這些呼叫將在CE下失敗。

+0

唯一的潛在問題是,如果你移動從Pocket PC到通用CE設備,如果應用程序使用任何Pocket PC特定的API,則這些調用將在CE下失敗。=>發生了什麼......應用程序運行但串行端口無法打開 – Bart 2010-07-25 22:43:13

+0

串行端口爲*不*掌上電腦特定的呼叫。他們在兩個平臺上以完全相同的方式工作。如果它失敗了,因爲您的應用程序中存在代碼錯誤,端口信息在設備之間更改或新平臺上的端口驅動程序不起作用。 – ctacke 2010-07-26 14:36:10

1
  1. 右鍵單擊發生此錯誤的項目。

  2. 轉到項目屬性 - >鏈接器 - >命令行

  3. 改機:ARM機器:拇指

reference

相關問題