エラーメッセージ:Undefined external "?V1" referred in abcd

テクニカル・ノート 98110

アーキテクチャ:

8051

コンポーネント:

linker

更新日:

2018/08/26 4:01

はじめに

IAR Embedded Workbench for 8051バージョン8.20以前からバージョン8.30にプロジェクトを移行した後、以下のエラーが突然発生するようになりました。

Error[e46]: Undefined external "?V1" referred in abcd

解説

プロジェクトで古いバージョンのcstartup (main()関数の前に呼ばれるコード)を、IAR Embedded Workbench for 8051バージョン8.30に移行しようとする場合、
バージョン8.30の新しいcstartupファイルでは仮想レジスタエリアの使用状況が最適化されるように変更されているため、上記のエラーが発生します。新しいcstartupファイルは、IAR Embedded Workbench for 8051バージョン8.30で使用されることを想定しています。

解決方法

バージョン8.30の新しいcstartupファイルを使用するか、プロジェクトに問題回避用のアセンブラファイルを追加してください。

詳細なバージョンの説明

この変更は、バージョン8.30.1 (品番EW24412)で導入され、バージョン8.30.2のリリースノートに記載されています。

ヒント 

テクニカルノート95811で同様の問題を扱っています。

申し訳ございませんが、弊社サイトではInternet Explorerをサポートしていません。サイトをより快適にご利用いただくために、Chrome、Edge、Firefoxなどの最新ブラウザをお使いいただきますようお願いいたします。