カスタマーサポートセンター

FAQ~よくある質問~ | FAQマスタ詳細表示

FAQ詳細情報

ID 10810678
FAQカテゴリ(大) 互換性・移植など
最終更新日 2014-02-22

質問内容

TN40394: EWARM バージョン 5.x 以降に乗り換えたほうがいいですか?

回答内容

EWのターゲット : ARM
EWのコンポーネント : Embedded Workbench & GUI
キーワード : 移植
更新日 : March 18, 2009

背景
バージョン 4.x と 5.x の大きな違いは、IAR ビルドツールが使用する内部のオブジェクト・フォーマットが変更されたことです。バージョン 4.x では IAR システムズのフォーマット UBROF が使われ、バージョン 5.x では業界標準の ELF/DWARF が使われます。

違い
• IAR XLINK リンカを置き換えて、全く新しいリンカ IAR ILINK Linker が導入されました。
• AEABI に準拠するため、アセンブラが新しくなりました。これは、4.x アセンブラに比べて機能がやや少なくなりました。
• 新らしいコンパイラは、移植の障壁が全くないか少しで済むものです。
• DWARF フォーマットは、UBROF フォーマットに比べデバッグ情報が少ないことが C-Spy デバッガを使用する時にわかります。

詳細情報
ELF は Executable and Linking Format.の略です。

DWARF は、(非公式に) Debug With Attributed Record Format と読めます。

オブジェクトフォーマットは ELF/DWARF をサポートする他のベンダーと互換になるように変更されました。

移植
移植についての詳細の情報は「ARM IAR Embedded Workbench移行ガイド」の「移行プロセス」章を参照してください。IAR Embedded Workbench 移行ガイド のリンクを使用してください。 これは、ARM IAR Embedded Workbench バージョン 4 から 5に移行する際に何が必要か、概観を知ることができます。

サポート
バージョン 4.x のサポートは行いません。バージョン 4.xx の機能はバージョン 5.20 以降に引き継がれています。

決断
バージョン 4 からバージョン 5 に移行する場合は、移植作業が必要になるので、上の「移植」を読んでください。時間と可能性があるのであれば、バージョン 5に移行することをお勧めします。特に、新しいコードを開発する場合、将来のアップデートや修正はバージョン 5に対して行われるからです。

インストール
デフォルトでは、バージョン 4 と 5 は同じディレクトリにはインストールされません。これは、両方のバージョンを衝突なしにインストールできるということを意味しています。

 

関連するテクニカルノート

Technical note 17095
My own memcpy() is replaced with call to __aeabi_memcpy() (EWARM v.5.x & 6.x)

Technical note 17934
Absolute placement (EWARM 5.x & 6.x) (in assembler source)

Technical note 21660
Error[40]: Bad instruction (EWARM 5.x & 6.x)

Technical note 21914
Fatal Error[Pe005]: for "intrinsic.h" and "inarm.h" (EWARM 5.x & 6.x)

Technical note 28162
Error[109]: Expression is too complex (EWARM 5.x & 6.x)

Technical note 35926
Can not set breakpoint prior to debugging (EWARM 5.x & 6.x)

Technical note 36121
Absolute placement (EWARM v.5.x to 6.20) (in C source)

Technical note 63124
Warning[24]: ENDMOD (EWARM 5.x & 6.x)

Technical note 65177
Can not build the XXXXXX output format when linking with ILINK

Technical note 71859
Verify Errors for migrated project for LPC-device (v.5.xx)

Technical note 73448
Fatal Error[Pe005] when including "io*.h" (v. 5.xx)

Technical note 75500
Using "__ramfunc" on assembly source (EWARM 5.x & 6.x)

Technical note 80474
'Error while running Linker' when linking for LPC-device (v. 5.10 to 5.30)

Technical note 96045
Run-time error in newly migrated project (EWARM 5.x & 6.x)

 

参考資料URL