Renesas Synergy™

FAQ 106242 : 他の出力形式と比較してファイルのサイズが非常に大きくなる。

Q: 質問

BINファイルを出力すると、motファイルと比較してファイルサイズが非常に大きくなります。


A: 回答

モトローラファイルなどは、実行データ(機械語) とデータが配置されるアドレスの情報を持っています。 その為、配置されるデータのアドレスが不連続の場合も、情報が増えることなくファイルが構築できます。

しかし、バイナリの場合は実行データだけで構成されており、配置アドレスの情報は持っていません。
その為、実行データが配置されるアドレスが不連続の場合、間のアドレスは「0」というデータを書き込むことになります。

この事により、バイナリファイルはサイズが大きくなる事があります。

このような場合は、出力ファイルの分割を用いて必要なアドレス範囲だけバイナリを出力し、ロード時にオフセットを与えてロードするようにしてください。

CS+の場合

CC-RX(ビルド・ツール)プロパティのヘキサ・出力オプション タブ内にある”出力ファイル”->”分割出力ファイル”にbinファイルに出力したいアドレス空間を指定してビルドしてください。
指定されたアドレス空間の領域だけのbinファイルを生成することができます。

アドレス空間を指定した場合でも、同時に全体のbinファイルも出力されます。
全体のbinファイル出力を抑止するオプションはございません。

参考FAQ
FAQ 1011646 : ビルド時にロードモジュールを分割して出力する方法を教えてください。

適用製品

SuperHファミリ用C/C++コンパイラパッケージ
RH850ファミリ用Cコンパイラパッケージ
RXファミリ用C/C++コンパイラパッケージ
RL78ファミリ用Cコンパイラパッケージ
H8SX,H8S,H8ファミリ用C/C++コンパイラパッケージ
他にご質問がございましたら、リクエストを送信してください