ビルドした実行ファイルのサイズが実際のコードよりも大きい

テクニカル・ノート 181240J

アーキテクチャ:

All

コンポーネント:

compiler

更新日:

2019/02/19 5:34

はじめに

本テクニカルノートでは、ビルドした実行ファイルのサイズが実際のコードよりも大きくなる理由について説明します。

 

解説

IAR Embedded Workbenchが出力する実行ファイル(Embedded Workbench for ARMのデフォルトでは .out)はプロジェクトオプションで、コンパイラ、アセンブラ、リンカで[デバッグ情報を生成する]にチェックが入っているとデバッガが参照する情報が含まれます。

ビルドした実行ファイルは、ソースコードのファイル名、パス名、行番号など多くの情報を含むため、実際のコード、データサイズよりも大きくなりますが、ターゲットメモリにダウンロードされる時には、デバッグ情報は含まれず、実コード、データのみがダウンロードされます。

その他のプロジェクトオプション設定が同一であれば、デバッグ情報付きでビルドした実行ファイルも、デバッグ情報なしでビルドした実行ファイルも、ターゲットにダウンロードされるデータは同一となります。

デバッグ情報はパソコン内でのみ参照されるため、情報流出などの懸念がなければデバッグ情報ありのまま開発をしていただいて問題ありません。

 

まとめ

デバッグ情報を含めてビルドした実行ファイルのサイズは、実際にフラッシュにダウンロードされるデータよりも大きくなります。

全ての製品名は、それぞれの所有者の商標または登録商標です

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