Linux/embedded/binutils
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
開始行:
binutils についての,adhoc な説明.
用語についてはかなりいい加減です.
*ld [#z4577add]
リンカ.
OS 上で動作するプログラムを作成する時は普通は gcc 経由で...
が,スタンドアロンで動作させるプログラム(ブートローダな...
オブジェクトのアドレス配置などは'''リンカスクリプト'''で...
簡易な配置はコマンドラインオプションでも指定可能.
*objcopy [#r185ebaa]
オブジェクトの形式変換.
例えば,linux カーネルをコンパイルして作成される vmlinux ...
これは elf 形式のため,このままメモリ上に配置しても実行す...
これをバイナリイメージ(というか,メモリ上に展開されるイ...
あと,「形式」としてモトローラの S-redord もサポートして...
ROM ライタを使用する時は便利かも.
それから,特定のセクション(プログラム領域・定数領域・変...
*objdump [#h2456cde]
ディスアセンブラ(だけ,というわけでもないのだけど).
まずは,-d オプション.
ディスアセンブルを行う.
elf 形式など,領域情報(プログラムコード・データの区別)...
が,前述の objcopy などでバイナリ形式に変換された場合,諸...
このような時は,-D オプションを使用する.
ただし,プログラムコード・やデータの情報は落ちてしまって...
ここらは古き良き時代(?)のディスアセンブラ同様である.
gcc で -g フラグを付けてデバッグ情報付きでコンパイルされ...
C のソースとアセンブラのニーモニックが霜降りで表示される.
*strip [#p4c1fe51]
OS 上の実行オブジェクトから,ローカルシンボル・デバッグ情...
ファイルシステムのフットプリント削減には有効.
シェアードライブラリ (*.so) にも適用可能であるが,不具合...
linux のカーネルモジュールに適用すると,読み込みできなく...
*nm [#f47be580]
オブジェクトファイル内のシンボルとアドレスの一覧を出力す...
strip したオブジェクトについては,-D オプションを付けると...
アドレス・シンボルの種類・シンボル名の形式で出力される.
重要なのはシンボルの種類.
-大文字は外部参照可能,小文字はローカルのシンボルであるこ...
-U は未解決シンボル~
シェアードライブラリとリンクしたプログラムの場合は実行時...
-T は,関数のエントリアドレス~
というか,ジャンプ先のアドレス,かな.
かな.
終了行:
binutils についての,adhoc な説明.
用語についてはかなりいい加減です.
*ld [#z4577add]
リンカ.
OS 上で動作するプログラムを作成する時は普通は gcc 経由で...
が,スタンドアロンで動作させるプログラム(ブートローダな...
オブジェクトのアドレス配置などは'''リンカスクリプト'''で...
簡易な配置はコマンドラインオプションでも指定可能.
*objcopy [#r185ebaa]
オブジェクトの形式変換.
例えば,linux カーネルをコンパイルして作成される vmlinux ...
これは elf 形式のため,このままメモリ上に配置しても実行す...
これをバイナリイメージ(というか,メモリ上に展開されるイ...
あと,「形式」としてモトローラの S-redord もサポートして...
ROM ライタを使用する時は便利かも.
それから,特定のセクション(プログラム領域・定数領域・変...
*objdump [#h2456cde]
ディスアセンブラ(だけ,というわけでもないのだけど).
まずは,-d オプション.
ディスアセンブルを行う.
elf 形式など,領域情報(プログラムコード・データの区別)...
が,前述の objcopy などでバイナリ形式に変換された場合,諸...
このような時は,-D オプションを使用する.
ただし,プログラムコード・やデータの情報は落ちてしまって...
ここらは古き良き時代(?)のディスアセンブラ同様である.
gcc で -g フラグを付けてデバッグ情報付きでコンパイルされ...
C のソースとアセンブラのニーモニックが霜降りで表示される.
*strip [#p4c1fe51]
OS 上の実行オブジェクトから,ローカルシンボル・デバッグ情...
ファイルシステムのフットプリント削減には有効.
シェアードライブラリ (*.so) にも適用可能であるが,不具合...
linux のカーネルモジュールに適用すると,読み込みできなく...
*nm [#f47be580]
オブジェクトファイル内のシンボルとアドレスの一覧を出力す...
strip したオブジェクトについては,-D オプションを付けると...
アドレス・シンボルの種類・シンボル名の形式で出力される.
重要なのはシンボルの種類.
-大文字は外部参照可能,小文字はローカルのシンボルであるこ...
-U は未解決シンボル~
シェアードライブラリとリンクしたプログラムの場合は実行時...
-T は,関数のエントリアドレス~
というか,ジャンプ先のアドレス,かな.
かな.
ページ名:
-->