英語フランス語スペイン語

Ad


OnWorksファビコン

aarch64-linux-gnu-objcopy - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターを介して、OnWorks の無料ホスティング プロバイダーで aarch64-linux-gnu-objcopy を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド aarch64-linux-gnu-objcopy です。

プログラム:

NAME


objcopy-オブジェクトファイルをコピーして翻訳します

SYNOPSIS


オブジェクトコピー [-F 友人名|--target =友人名]
[-I 友人名|--input-target =友人名]
[-O 友人名|--output-target =友人名]
[-B BFDARCH|--binary-architecture =BFDARCH]
[-S|--strip-all]
[-g|--strip-debug]
[-K シンボル名|--keep-symbol =シンボル名]
[-N シンボル名|--strip-symbol =シンボル名]
[--strip-unneeded-symbol =シンボル名]
[-G シンボル名|--keep-global-symbol =シンボル名]
[--localize-hidden]
[-L シンボル名|--localize-symbol =シンボル名]
[--globalize-symbol =シンボル名]
[-W シンボル名|--weaken-symbol =シンボル名]
[-w|-ワイルドカード]
[-x|-破棄-すべて]
[-X|--discard-locals]
[-b バイト|--byte =バイト]
[-i []|- 間を空ける[=]]
[--interleave-width =]
[-j セクションパターン|--only-section =セクションパターン]
[-R セクションパターン|--remove-section =セクションパターン]
[-p|--preserve-dates]
[-D|--enable-deterministic-archives]
[-U|--deterministic-archives を無効にする]
[-デバッグ]
[--gap-fill =ヴァル]
[--pad-to =住所]
[--set-start =ヴァル]
[--adjust-start =増加]
[--change-addresses =増加]
[--変更セクションアドレス セクションパターン{=、+、-}ヴァル]
[--変更セクション-lma セクションパターン{=、+、-}ヴァル]
[--change-セクション-vma セクションパターン{=、+、-}ヴァル]
[-変更-警告] [-変更なし-警告]
[--set-section-flags セクションパターン=フラグ]
[-追加-セクション セクション名=ファイル名]
[--ダンプセクション セクション名=ファイル名]
[--更新セクション セクション名=ファイル名]
[-名前の変更-セクション 古い名前=新しい名前[,フラグ]]
[--長いセクション名 {有効化、無効化、維持}]
[--先頭文字の変更] [--先頭の文字を削除]
[--reverse-bytes =NUM]
[--srec-len =ival] [--srec-forceS3]
[--redefine-sym 古い=新製品]
[--redefine-syms =ファイル名]
[- 弱める]
[--keep-symbols =ファイル名]
[--strip-symbols =ファイル名]
[--strip-unneeded-symbols =ファイル名]
[--keep-global-symbols =ファイル名]
[--localize-symbols =ファイル名]
[--globalize-symbols =ファイル名]
[--weaken-symbols =ファイル名]
[--記号を追加 =[ :][,フラグ]
[--alt-machine-code =index]
[--prefix-symbols =文字列]
[--prefix-sections =文字列]
[--prefix-alloc-sections =文字列]
[--add-gnu-debuglink =ファイルへのパス]
[--keep-file-symbols]
[--デバッグのみを保持する]
[--strip-dwo]
[--extract-dwo]
[--抽出記号]
[-書き込み可能-テキスト]
[-読み取り専用-テキスト]
[- ピュア]
[-不純]
[--file-alignment =NUM]
[--heap =サイズ]
[--image-base =住所]
[--section-alignment =NUM]
[--stack =サイズ]
[-サブシステム=which:主要な.マイナー]
[--compress-debug-sections]
[--decompress-debug-sections]
[--dwarf-depth =n]
[--dwarf-start =n]
[-v|-詳細]
[-V|- バージョン]
[ - 助けて] [- 情報]
ファイル内 [アウトファイル]

DESCRIPTION


GNU オブジェクトコピー ユーティリティは、オブジェクトファイルの内容を別のファイルにコピーします。 オブジェクトコピー 使用されます
オブジェクトファイルの読み取りと書き込みを行うGNUBFDライブラリ。 目的地を書ける
ソースオブジェクトファイルとは異なる形式のオブジェクトファイル。 正確な動作
of オブジェクトコピー コマンドラインオプションによって制御されます。 ご了承ください オブジェクトコピー ことができるようになります
任意のXNUMXつの形式間で完全にリンクされたファイルをコピーします。 ただし、再配置可能オブジェクトをコピーする
XNUMXつの形式の間のファイルは、期待どおりに機能しない場合があります。

オブジェクトコピー 翻訳を行うための一時ファイルを作成し、後でそれらを削除します。
オブジェクトコピー BFDを使用してすべての翻訳作業を行います。 すべてのフォーマットにアクセスできます
BFDで記述されているため、明示的に通知されることなくほとんどの形式を認識できます。

オブジェクトコピー の出力ターゲットを使用してSレコードを生成するために使用できます レク (例:使用 -O
レク).

オブジェクトコピー の出力ターゲットを使用して生のバイナリファイルを生成するために使用できます バイナリ
(例:使用 -O バイナリ)。 いつ オブジェクトコピー 生のバイナリファイルを生成します、それは本質的に
入力オブジェクトファイルの内容のメモリダンプを生成します。 すべての記号と
再配置情報は破棄されます。 メモリダンプはロードアドレスから始まります
出力ファイルにコピーされた最下位セクションの。

Sレコードまたは生のバイナリファイルを生成する場合は、次を使用すると役立つ場合があります。 -S 削除する
デバッグ情報を含むセクション。 ある場合には -R 削除すると便利になります
バイナリファイルに必要のない情報を含むセクション。

ノート - -オブジェクトコピー 入力ファイルのエンディアンを変更することはできません。 入力の場合
フォーマットにはエンディアンがあります(一部のフォーマットにはエンディアンがありません)、 オブジェクトコピー 入力をファイルにコピーすることしかできません
同じエンディアンを持っているか、エンディアンを持たないフォーマット(例: レク)。 (しかし、
見る --リバースバイト オプション。)

OPTIONS


ファイル内
アウトファイル
それぞれ入力ファイルと出力ファイル。 指定しない場合 アウトファイル, オブジェクトコピー
一時ファイルを作成し、結果の名前を破壊的に名前変更します。 ファイル内.

-I 友人名
--input-target =友人名
ソースファイルのオブジェクト形式は次のようになります。 友人名、しようとするのではなく
それを推測します。

-O 友人名
--output-target =友人名
オブジェクト形式を使用して出力ファイルを書き込みます 友人名.

-F 友人名
--target =友人名
  友人名 入力ファイルと出力ファイルの両方のオブジェクト形式として。 つまり、単に
変換せずにソースから宛先にデータを転送します。

-B BFDARCH
--binary-architecture =BFDARCH
アーキテクチャのない入力ファイルをオブジェクトファイルに変換するときに便利です。 これで
出力アーキテクチャを次のように設定できる場合 BFDARCH。 このオプションは、次の場合は無視されます。
入力ファイルには既知のものがあります BFDARCH。 プログラム内でこのバイナリデータにアクセスできます
変換プロセスによって作成された特別な記号を参照することによって。 これらは
シンボルは_binary_と呼ばれますオブジェクトファイル_start、_binary_オブジェクトファイル_endと
_バイナリ_オブジェクトファイル_サイズ。 たとえば、画像ファイルをオブジェクトファイルに変換して
次に、これらの記号を使用してコードでアクセスします。

-j セクションパターン
--only-section =セクションパターン
示されたセクションのみを入力ファイルから出力ファイルにコピーします。 このオプション
複数回与えられる場合があります。 このオプションを不適切に使用すると、
出力ファイルは使用できません。 ワイルドカード文字はで受け入れられます セクションパターン.

-R セクションパターン
--remove-section =セクションパターン
一致するセクションを削除します セクションパターン 出力ファイルから。 このオプションは
複数回与えられた。 このオプションを不適切に使用すると、出力が作成される可能性があることに注意してください
ファイルが使用できません。 ワイルドカード文字はで受け入れられます セクションパターン。 両方を使用して -j
& -R オプションを一緒に使用すると、未定義の動作が発生します。

-S
--strip-all
ソースファイルから再配置およびシンボル情報をコピーしないでください。

-g
--strip-debug
ソースファイルからデバッグシンボルまたはセクションをコピーしないでください。

-ストリップ-不要
再配置処理に必要のないすべてのシンボルを削除します。

-K シンボル名
--keep-symbol =シンボル名
シンボルを取り除くときは、シンボルを保持します シンボル名 通常は剥がされても。
このオプションは複数回指定できます。

-N シンボル名
--strip-symbol =シンボル名
シンボルをコピーしないでください シンボル名 ソースファイルから。 このオプションはもっと与えられるかもしれません
一度より。

--strip-unneeded-symbol =シンボル名
シンボルをコピーしないでください シンボル名 ソースファイルから必要な場合を除き、
移転。 このオプションは複数回指定できます。

-G シンボル名
--keep-global-symbol =シンボル名
シンボルのみを保持 シンボル名 グローバル。 他のすべてのシンボルをファイルに対してローカルにし、次のようにします。
それらは外部からは見えません。 このオプションは複数回指定できます。

--localize-hidden
ELFオブジェクトで、非表示または内部の可視性を持つすべてのシンボルをローカルとしてマークします。
このオプションは、次のようなシンボル固有のローカリゼーションオプションに加えて適用されます。 -L.

-L シンボル名
--localize-symbol =シンボル名
シンボルを作る シンボル名 ファイルに対してローカルであるため、外部からは見えません。 この
オプションは複数回指定できます。

-W シンボル名
--weaken-symbol =シンボル名
シンボルを作る シンボル名 弱い。 このオプションは複数回指定できます。

--globalize-symbol =シンボル名
シンボルを与える シンボル名 内のファイルの外部に表示されるようにグローバルスコープ
それが定義されています。 このオプションは複数回指定できます。

-w
-ワイルドカード
で正規表現を許可する シンボル名■他のコマンドラインオプションで使用されます。 NS
疑問符(?)、アスタリスク(*)、円記号(\)、角括弧([])の演算子は次のことができます。
シンボル名のどこでも使用できます。 シンボル名の最初の文字が
感嘆符(!)を押すと、その記号のスイッチの意味が逆になります。 にとって
例:

-w -W!foo -W fo *

objcopyは、シンボルを除く「fo」で始まるすべてのシンボルを弱めます。
「foo」。

-x
-破棄-すべて
非グローバルシンボルをソースファイルからコピーしないでください。

-X
--discard-locals
コンパイラによって生成されたローカルシンボルをコピーしないでください。 (これらは通常、 L or ..)

-b バイト
--byte =バイト
インターリーブが有効になっている場合 - 間を空ける オプションの範囲を開始します
保持するバイト バイトthバイト。 バイト 0からの範囲にすることができます -1、ここで
によって与えられる値です - 間を空ける オプションを選択します。

-i []
--interleave [=]
すべてから範囲をコピーするだけ バイト。 (ヘッダーデータは影響を受けません)。 選択する
範囲内のどのバイトがコピーを開始します - バイト オプション。 の幅を選択します
との範囲 --インターリーブ幅 オプションを選択します。

このオプションは、ROMをプログラムするファイルを作成する場合に便利です。 これは通常、
「srec」出力ターゲット。 ご了承ください オブジェクトコピー 指定しないと文句を言います
- バイト オプションも。

デフォルトのインターリーブ幅は4なので、 - バイト 0に設定、 オブジェクトコピー コピーします
入力から出力までのXNUMXバイトごとの最初のバイト。

--interleave-width =
と一緒に使用する場合 - 間を空ける オプション、コピー 一度にバイト。 の始まり
コピーされるバイトの範囲は、 - バイト オプション、および範囲の範囲
で設定されます - 間を空ける オプションを選択します。

このオプションのデフォルト値は1です。 プラス バイト によって設定された値
  - バイト オプションは、によって設定されたインターリーブ幅を超えてはなりません - 間を空ける
オプションを選択します。

このオプションは、インターリーブされた16つのXNUMXビットフラッシュのイメージを作成するために使用できます。
通過による32ビットバス -b 0 -i 4 --interleave-width = 2 & -b 2 -i 4
--interleave-width = 2 2へ オブジェクトコピー コマンド。 入力が「12345678」の場合、
出力はそれぞれ「1256」と「3478」になります。

-p
--preserve-dates
出力ファイルのアクセス日と変更日を次のものと同じに設定します
入力ファイル。

-D
--enable-deterministic-archives
で動作する 決定論的 モード。 アーカイブメンバーをコピーしてアーカイブを書き込む場合
インデックスを作成し、UID、GID、タイムスタンプにゼロを使用し、すべてに一貫したファイルモードを使用します
ファイル。

If ビンユーティリティ で構成されました --enable-deterministic-archives、このモードがオンになります
デフォルトでは。 で無効にすることができます -U 以下のオプション。

-U
--deterministic-archives を無効にする
Do で動作 決定論的 モード。 これは、 -D 上記のオプション:
アーカイブメンバーをコピーしてアーカイブインデックスを書き込むときは、実際のUID、GID、
タイムスタンプ、およびファイルモード値。

これがデフォルトです。 ビンユーティリティ で構成されました
--enable-deterministic-archives.

-デバッグ
可能であれば、デバッグ情報を変換します。 これはデフォルトではありません。
特定のデバッグ形式がサポートされており、変換プロセスに時間がかかる場合があります
消費する。

-ギャップフィル ヴァル
セクション間のギャップを次のように埋めます ヴァル。 この操作は、 負荷 住所 (LMA)
セクションの。 これは、セクションのサイズを下に大きくすることによって行われます。
アドレス、およびで作成された余分なスペースを埋める ヴァル.

--パッドへ 住所
出力ファイルをロードアドレスまでパディングします 住所。 これは、
最後のセクションのサイズ。 余分なスペースは、で指定された値で埋められます
-ギャップフィル (デフォルトはゼロ)。

--セットスタート ヴァル
新しいファイルの開始アドレスをに設定します ヴァル。 すべてのオブジェクトファイル形式がサポートしているわけではありません
開始アドレスを設定します。

--変更開始 増加
-調整-開始 増加
追加して開始アドレスを変更します 増加。 すべてのオブジェクトファイル形式が設定をサポートしているわけではありません
開始アドレス。

--アドレス変更 増加
--調整-vma 増加
すべてのセクションのVMAアドレスとLMAアドレス、および開始アドレスを次のように変更します。
追加 増加。 一部のオブジェクトファイル形式では、セクションアドレスを変更できません
任意に。 これはセクションを再配置しないことに注意してください。 プログラムが期待する場合
特定のアドレスにロードされるセクション。このオプションは、
別のアドレスにロードされるようなセクションでは、プログラムが失敗する可能性があります。

--変更セクションアドレス セクションパターン{=、+、-}ヴァル
--調整-セクション-vma セクションパターン{=、+、-}ヴァル
一致するセクションのVMAアドレスとLMAアドレスの両方を設定または変更する
セクションパターン。 場合 = が使用される場合、セクションアドレスはに設定されます ヴァル。 さもないと、 ヴァル is
セクションアドレスに加算または減算されます。 下のコメントを参照してください
--アドレス変更、 その上。 もしも セクションパターン 入力のどのセクションとも一致しません
ファイルの場合、警告が発行されます。 -変更なし-警告 使用されている。

--変更セクション-lma セクションパターン{=、+、-}ヴァル
一致するセクションのLMAアドレスを設定または変更する セクションパターン。 LMA
addressは、プログラムのロード時にセクションがメモリにロードされるアドレスです。
時間。 通常、これはVMAアドレスと同じです。VMAアドレスは
プログラム実行時のセクションですが、一部のシステム、特にプログラムが
ROMに保持されている場合、XNUMXつは異なる可能性があります。 もしも = が使用される場合、セクションアドレスはに設定されます
ヴァル。 さもないと、 ヴァル セクションアドレスに加算または減算されます。 を参照してください
下のコメント --アドレス変更、 その上。 もしも セクションパターン いずれにも一致しません
入力ファイルのセクションでは、警告が発行されます。 -変更なし-警告 is
中古。

--change-セクション-vma セクションパターン{=、+、-}ヴァル
一致するセクションのVMAアドレスを設定または変更する セクションパターン。 VMAアドレス
プログラムが開始されたときにセクションが配置されるアドレスです
実行中。 通常、これはLMAアドレスと同じです。LMAアドレスは次のアドレスです。
セクションはメモリにロードされますが、一部のシステム、特に
プログラムはROMに保持されているため、XNUMXつは異なる場合があります。 もしも = 使用される場合、セクションアドレス
に設定されています ヴァル。 さもないと、 ヴァル セクションアドレスに加算または減算されます。
下のコメントを参照してください --アドレス変更、 その上。 もしも セクションパターン 一致していません
入力ファイルのセクションがある場合は、警告が発行されます。 -変更なし-警告
使用されている。

-変更-警告
-調整-警告
If --変更セクションアドレス or --変更セクション-lma or --change-セクション-vma 使用されている、
セクションパターンがどのセクションとも一致しない場合は、警告を発行します。 これは
デフォルト。

-変更なし-警告
-調整なし-警告
次の場合は警告を発行しないでください --変更セクションアドレス or --adjust-セクション-lma or
--調整-セクション-vma セクションパターンがどのセクションとも一致しない場合でも、が使用されます。

--set-section-flags セクションパターン=フラグ
一致するセクションのフラグを設定します セクションパターンを選択します。 フラグ 引数はコンマです
フラグ名の区切り文字列。 認識される名前は 割り当てる, 中身, 負荷,
無負荷, 読み取り専用, コード, データ, ROM, シェア, debug。 あなたは設定することができます 中身 フラグ
コンテンツがないセクションの場合、クリアすることは意味がありません
中身 コンテンツを含むセクションのフラグ-代わりにセクションを削除してください。
すべてのフラグがすべてのオブジェクトファイル形式で意味があるわけではありません。

-追加-セクション セクション名=ファイル名
名前の付いた新しいセクションを追加します セクション名 ファイルのコピー中。 新しい内容
セクションはファイルから取得されます ファイル名。 セクションのサイズはのサイズになります
ファイル。 このオプションは、次のセクションをサポートできるファイル形式でのみ機能します。
任意の名前。 注-を使用する必要がある場合があります --set-section-flags オプション
新しく作成されたセクションの属性を設定します。

--ダンプセクション セクション名=ファイル名
名前の付いたセクションの内容を配置します セクション名 ファイルに ファイル名、上書き
以前にそこにあった可能性のあるコンテンツ。 このオプションは、の逆です。
-追加-セクション。 このオプションは、 -のみ-セクション それ以外のオプション
フォーマットされたファイルを作成せず、コンテンツを生のバイナリデータとしてダンプするだけです。
再配置を適用せずに。 オプションは複数回指定できます。

--更新セクション セクション名=ファイル名
名前の付いたセクションの既存のコンテンツを置き換えます セクション名 ファイルの内容と
ファイル名。 セクションのサイズは、ファイルのサイズに合わせて調整されます。 NS
のセクションフラグ セクション名 変更されません。 ELF形式のファイルの場合、
セグメントマッピングも変更されません。これは、
--セクションの削除 続い -追加-セクション。 オプションは複数指定できます
一度。

注-使用することが可能です -名前の変更-セクション & --更新セクション 更新と
XNUMXつのコマンドラインからセクションの名前を変更します。 この場合、元のセクション名を渡します
〜へ --更新セクション、および元のセクション名と新しいセクション名 -名前の変更-セクション.

--記号を追加 =[ :][,フラグ]
名前の付いた新しいシンボルを追加します ファイルのコピー中。 このオプションを指定できます
複数回。 の場合 が与えられると、シンボルはに関連付けられ、
そのセクションに関連して、そうでない場合はABSシンボルになります。 未定義の指定
セクションは致命的なエラーになります。 値のチェックはありません、それはなります
指定されたとおりに取られます。 シンボルフラグを指定できますが、すべてのフラグが指定できるわけではありません
すべてのオブジェクトファイル形式にとって意味があります。 デフォルトでは、シンボルはグローバルになります。 NS
スペシャルフラッグ 'before =その他の記号'は、指定された前に新しい記号を挿入します
その他の記号、それ以外の場合、シンボルはシンボルテーブルの最後に追加されます。
それらが表示される順序。

-名前の変更-セクション 古い名前=新しい名前[,フラグ]
セクションの名前を 古い名前 〜へ 新しい名前、オプションでセクションのフラグを次のように変更します
フラグ 過程の中で。 これには、リンカースクリプトを使用して実行するよりも優れています。
出力がオブジェクトファイルとして残り、リンクされないという点で名前を変更します
実行可能ファイル。

このオプションは、入力形式がバイナリの場合に特に役立ちます。
常に.dataというセクションを作成します。 たとえば、代わりに
バイナリデータを含む.rodataというセクションでは、次のコマンドラインを使用できます
それを達成するために:

objcopy-Iバイナリ-O -NS \
-名前の変更-section.data = .rodata、alloc、load、readonly、data、contents \


--長いセクション名 {有効化、無効化、維持}
「COFF」と「PE-COFF」を処理する際の長いセクション名の処理を制御します
オブジェクト形式。 デフォルトの動作、 続ける、もしあれば長いセクション名を保持することです
入力ファイルに存在します。 NS enable & disable オプションを強制的に有効にする、または
出力オブジェクトでの長いセクション名の使用を無効にします。 いつ disable 有効です、
入力オブジェクトの長いセクション名は切り捨てられます。 NS enable オプションは
入力に長いセクション名が存在する場合にのみ、長いセクション名を出力します。 これはほとんど同じです
as 続ける、しかし、 enable オプションは作成を強制する可能性があります
出力ファイルの空の文字列テーブルの。

--先頭文字の変更
一部のオブジェクトファイル形式では、記号の先頭に特殊文字が使用されます。 最も
このような一般的な文字はアンダースコアです。これは、コンパイラがすべての記号の前に追加することがよくあります。
このオプションは オブジェクトコピー すべての記号の主役を変更する場合
オブジェクトファイル形式間で変換します。 オブジェクトファイル形式が同じ先頭を使用する場合
文字の場合、このオプションは効果がありません。 それ以外の場合は、文字を追加するか、
必要に応じて、文字を変更するか、文字を変更します。

--先頭の文字を削除
グローバルシンボルの最初の文字が、使用される特殊シンボルの先頭文字である場合
オブジェクトファイル形式で、文字を削除します。 主要な最も一般的な記号
文字は下線です。 このオプションは、すべてのグローバルから先頭のアンダースコアを削除します
シンボル。 これは、異なるファイルのオブジェクトをリンクする場合に便利です。
シンボル名の規則が異なるフォーマット。 これはとは異なります
--先頭文字の変更 必要に応じて常にシンボル名を変更するため、
出力ファイルのオブジェクトファイル形式に関係なく。

--reverse-bytes =NUM
出力内容のあるセクションのバイトを逆にします。 セクションの長さは均等でなければなりません
スワップを実行できるようにするために指定された値で割り切れる。 逆転
インターリーブが実行される前に行われます。

このオプションは通常、問題のあるターゲットシステムのROMイメージを生成する際に使用されます。
たとえば、一部のターゲットボードでは、32ビットROMからフェッチされた8ビットワードが再実行されます。
CPUのバイト順序に関係なく、リトルエンディアンのバイト順序でアセンブルされます。 応じて
プログラミングモデルでは、ROMのエンディアンを変更する必要がある場合があります。

次の12345678バイトを含むセクションを持つ単純なファイルを考えてみます:XNUMX。

使い方 --reverse-bytes = 2 上記の例では、出力ファイルのバイトは次のようになります。
21436587を注文しました。

使い方 --reverse-bytes = 4 上記の例では、出力ファイルのバイトは次のようになります。
43218765を注文しました。

使用することにより、 --reverse-bytes = 2 上記の例では、その後に --reverse-bytes = 4
出力ファイルの場合、34127856番目の出力ファイルのバイトはXNUMXの順序になります。

--srec-len =ival
srec出力に対してのみ意味があります。 Srecordsの最大長を設定します
に生産 ival。 この長さは、アドレス、データ、およびcrcフィールドの両方をカバーします。

--srec-forceS3
srec出力に対してのみ意味があります。 S1 / S2レコードの生成を避け、S3のみを作成します
レコード形式。

--redefine-sym 古い=新製品
シンボルの名前を変更する 古い新製品。 これは、リンクを試しているときに役立ちます
ソースがなく、名前の衝突があるXNUMXつのもの。

--redefine-syms =ファイル名
申し込む --redefine-sym 各シンボルペアに "古い 新製品"ファイルに記載されています ファイル名.
ファイル名 は単純なフラットファイルで、XNUMX行にXNUMXつのシンボルペアがあります。 行コメントは
ハッシュ文字によって導入されます。 このオプションは複数回指定できます。

- 弱める
ファイル内のすべてのグローバルシンボルをweakに変更します。 これは、構築するときに役立ちます
を使用して他のオブジェクトに対してリンクされるオブジェクト -R リンカへのオプション。
このオプションは、weakをサポートするオブジェクトファイル形式を使用する場合にのみ有効です。
シンボル。

--keep-symbols =ファイル名
申し込む --keep-シンボル ファイルにリストされている各シンボルのオプション ファイル名. ファイル名 is
XNUMX行にXNUMXつのシンボル名を持つ単純なフラットファイル。 行コメントはによって導入される可能性があります
ハッシュ文字。 このオプションは複数回指定できます。

--strip-symbols =ファイル名
申し込む --ストリップシンボル ファイルにリストされている各シンボルのオプション ファイル名. ファイル名 is
XNUMX行にXNUMXつのシンボル名を持つ単純なフラットファイル。 行コメントはによって導入される可能性があります
ハッシュ文字。 このオプションは複数回指定できます。

--strip-unneeded-symbols =ファイル名
申し込む --strip-不要な記号 ファイルにリストされている各シンボルのオプション ファイル名.
ファイル名 は単純なフラットファイルで、XNUMX行にXNUMXつのシンボル名が付いています。 行コメントは
ハッシュ文字によって導入されます。 このオプションは複数回指定できます。

--keep-global-symbols =ファイル名
申し込む --keep-グローバルシンボル ファイルにリストされている各シンボルのオプション ファイル名.
ファイル名 は単純なフラットファイルで、XNUMX行にXNUMXつのシンボル名が付いています。 行コメントは
ハッシュ文字によって導入されます。 このオプションは複数回指定できます。

--localize-symbols =ファイル名
申し込む --ローカライズ記号 ファイルにリストされている各シンボルのオプション ファイル名. ファイル名
は単純なフラットファイルで、XNUMX行にXNUMXつのシンボル名が付いています。 行コメントが導入される場合があります
ハッシュ文字で。 このオプションは複数回指定できます。

--globalize-symbols =ファイル名
申し込む -- グローバル化シンボル ファイルにリストされている各シンボルのオプション ファイル名. ファイル名
は単純なフラットファイルで、XNUMX行にXNUMXつのシンボル名が付いています。 行コメントが導入される場合があります
ハッシュ文字で。 このオプションは複数回指定できます。

--weaken-symbols =ファイル名
申し込む --weaken-シンボル ファイルにリストされている各シンボルのオプション ファイル名. ファイル名 is
XNUMX行にXNUMXつのシンボル名を持つ単純なフラットファイル。 行コメントはによって導入される可能性があります
ハッシュ文字。 このオプションは複数回指定できます。

--alt-machine-code =index
出力アーキテクチャに代替マシンコードがある場合は、 index代わりにthコード
デフォルトのものの。 これは、マシンに公式コードが割り当てられている場合に役立ちます。
ツールチェーンは新しいコードを採用しますが、他のアプリケーションは依然として
使用されている元のコード。 ELFベースのアーキテクチャの場合 index 代替案は
存在しない場合、値は絶対数として扱われ、
ELFヘッダーのe_machineフィールド。

-書き込み可能-テキスト
出力テキストを書き込み可能としてマークします。 このオプションは、すべてのオブジェクトファイルにとって意味があるわけではありません
フォーマット。

-読み取り専用-テキスト
出力テキストを書き込み禁止にします。 このオプションは、すべてのオブジェクトにとって意味があるわけではありません
ファイル形式。

- ピュア
出力ファイルをデマンドページングとしてマークします。 このオプションは、すべてのオブジェクトにとって意味があるわけではありません
ファイル形式。

-不純
出力ファイルを不純としてマークします。 このオプションは、すべてのオブジェクトファイルにとって意味があるわけではありません
フォーマット。

--prefix-symbols =文字列
出力ファイルのすべての記号の前に 文字列.

--prefix-sections =文字列
出力ファイルのすべてのセクション名の前に 文字列.

--prefix-alloc-sections =文字列
出力ファイルで割り当てられたすべてのセクションのすべての名前の前に 文字列.

--add-gnu-debuglink =ファイルへのパス
への参照を含む.gnu_debuglinkセクションを作成します ファイルへのパス と追加します
それを出力ファイルに追加します。 注:次のファイル ファイルへのパス 存在する必要があります。 の一部
.gnu_debuglinkセクションを追加するプロセスには、
セクションへのデバッグ情報ファイルの内容。

デバッグ情報ファイルがXNUMXつの場所に作成されているが、次の場所にインストールされる場合
後で別の場所に移動し、インストールされた場所へのパスを使用しないでください
位置。 NS --add-gnu-debuglink インストールされたファイルが失敗するため、オプションは失敗します
まだ存在していません。 代わりに、デバッグ情報ファイルを現在のディレクトリに置き、
--add-gnu-debuglink 次のようなディレクトリコンポーネントのないオプション:

objcopy --add-gnu-debuglink = foo.debug

デバッグ時に、デバッガーは次の場所で個別のデバッグ情報ファイルを検索しようとします。
既知の場所のセット。 これらの場所の正確なセットは、
配布が使用されていますが、通常は次のものが含まれます。

"*実行可能ファイルと同じディレクトリ。"
"*実行可能ファイルを含むディレクトリのサブディレクトリ"
.debugと呼ばれる

"* / usr / lib / debugなどのグローバルデバッグディレクトリ。"

以前にデバッグ情報ファイルがこれらの場所のいずれかにインストールされている限り
デバッガーが実行されると、すべてが正しく機能するはずです。

--keep-file-symbols
ファイルをストリッピングするとき、おそらく --strip-debug or -ストリップ-不要、保持する
ソースファイル名を指定するシンボル。そうしないと削除されます。

--デバッグのみを保持する
ファイルを削除し、削除されないセクションの内容を削除します
--strip-debug デバッグセクションはそのままにしておきます。 ELFファイルでは、これにより保存されます
出力のすべてのノートセクション。

注-削除されたセクションのセクションヘッダーは、それらを含めて保持されます
サイズですが、セクションの内容は破棄されます。 セクションヘッダーは
他のツールがdebuginfoファイルを実際のものと一致させることができるように保存されます
実行可能ファイルが別のアドレス空間に再配置された場合でも、実行可能ファイル。

このオプションは、 --add-gnu-debuglink
XNUMXつの部分からなる実行可能ファイルを作成します。 より少ないスペースを占めるXNUMXつのストリップされたバイナリ
RAMとディストリビューション、そしてXNUMX番目のデバッグ情報ファイルは
デバッグ機能が必要な場合に必要です。 これらを作成するための推奨手順
ファイルは次のとおりです。

1。
「foo」そして...

1。
デバッグ情報を含むファイルを作成します。

1。
実行可能ファイルを削除しました。

1。
デバッグ情報へのリンクを削除された実行可能ファイルに追加します。

注---デバッグ情報ファイルの拡張子として「.dbg」を選択するかどうかは任意です。
また、「-only-keep-debug」ステップはオプションです。 代わりにこれを行うことができます:

1。
1。
1。
1。

つまり、が指すファイル --add-gnu-debuglink 完全な実行可能ファイルにすることができます。 それ
によって作成されたファイルである必要はありません --デバッグのみを保持する スイッチ。

注---このスイッチは、完全にリンクされたファイルでの使用のみを目的としています。 しません
デバッグ情報が不完全な可能性があるオブジェクトファイルで使用する意味があります。
gnu_debuglink機能に加えて、現在XNUMXつのファイル名の存在のみをサポートしています
オブジェクトファイルごとにXNUMXつの複数のファイル名ではなく、デバッグ情報を含む
基本。

--strip-dwo
すべてのDWARF.dwoセクションの内容を削除し、残りのデバッグを残します
セクションとすべてのシンボルはそのままです。 このオプションは、コンパイラが次のように使用することを目的としています。
の一部 -gsplit-ドワーフ オプション。デバッグ情報を.oファイル間で分割します。
および別の.dwoファイル。 コンパイラは、すべてのデバッグ情報を同じもので生成します
ファイル、次に使用します --extract-dwo .dwoセクションを.dwoファイルにコピーするオプション。
そうして --strip-dwo これらのセクションを元の.oファイルから削除するオプション。

--extract-dwo
すべてのDWARF.dwoセクションの内容を抽出します。 を参照してください --strip-dwo 詳細のオプション
情報を表示します。

--ファイル配置 NUM
ファイルの配置を指定します。 ファイル内のセクションは常にファイルオフセットで始まります
これはこの数の倍数です。 これはデフォルトで512になります。[このオプションは特定のものです
PEターゲットに。]

- ヒープ リザーブ
- ヒープ リザーブ,コミット
として使用するために予約(およびオプションでコミット)するメモリのバイト数を指定します
このプログラムのヒープ。 [このオプションはPEターゲットに固有です。]

--画像ベース
  プログラムまたはdllのベースアドレスとして。 これは最低のメモリです
プログラムまたはdllがロードされるときに使用される場所。 する必要性を減らすために
dllを再配置してパフォーマンスを向上させるには、それぞれに一意のベースアドレスを設定する必要があります
他のdllと重複しないでください。 実行可能ファイルのデフォルトは0x400000であり、
dllの場合は0x10000000。 [このオプションはPEターゲットに固有です。]

--セクションの配置 NUM
セクションの配置を設定します。 メモリ内のセクションは、常に次のアドレスで始まります
この数の倍数です。 デフォルトは0x1000です。 [このオプションはPEに固有です
ターゲット。]

- スタック リザーブ
- スタック リザーブ,コミット
として使用するために予約(およびオプションでコミット)するメモリのバイト数を指定します
このプログラムのスタック。 [このオプションはPEターゲットに固有です。]

-サブシステム which
-サブシステム which:主要な
-サブシステム which:主要な.マイナー
プログラムを実行するサブシステムを指定します。 の法的価値
which 「native」、「windows」、「console」、「posix」、「efi-app」、「efi-bsd」、「efi-rtd」、
「sal-rtd」、および「xbox」。 オプションで、サブシステムのバージョンも設定できます。 数値
値も受け入れられます which。 [このオプションはPEターゲットに固有です。]

--抽出記号
ファイルのセクションフラグとシンボルは保持しますが、すべてのセクションデータを削除します。 具体的には、
オプション:

*
*
*

このオプションは、 .sym VxWorksカーネルのファイル。 それはまたすることができます
サイズを小さくする便利な方法 --ジャストシンボル リンカ入力ファイル。

--compress-debug-sections
ELFABIのSHF_COMPRESSEDでzlibを使用してDWARFデバッグセクションを圧縮します。 ノート -
圧縮が実際にセクションを作成する場合 より大きい、その後は圧縮されません。

--compress-debug-sections = none
--compress-debug-sections = zlib
--compress-debug-sections = zlib-gnu
--compress-debug-sections = zlib-gabi
ELFファイルの場合、これらのオプションはDWARFデバッグセクションの圧縮方法を制御します。
--compress-debug-sections = none に相当します --decompress-debug-sections.
--compress-debug-sections = zlib & --compress-debug-sections = zlib-gabi 同等です
〜へ --compress-debug-sections. --compress-debug-sections = zlib-gnu DWARFを圧縮します
zlibを使用してセクションをデバッグします。 デバッグセクションの名前が次のように変更されます .zdebug
。デバッグ。 注-圧縮によって実際にセクションが作成される場合 より大きいをタップし、その後、
圧縮も名前変更もされません。

--decompress-debug-sections
zlibを使用してDWARFデバッグセクションを解凍します。 の元のセクション名
圧縮されたセクションが復元されます。

-V
- バージョン
のバージョン番号を表示する オブジェクトコピー.

-v
-詳細
詳細出力:変更されたすべてのオブジェクトファイルを一覧表示します。 アーカイブの場合、 オブジェクトコピー -V
アーカイブのすべてのメンバーを一覧表示します。

- 助けて
オプションの概要を表示する オブジェクトコピー.

- 情報
使用可能なすべてのアーキテクチャとオブジェクト形式を示すリストを表示します。

@file
からコマンドラインオプションを読み取る file。 読み取られたオプションは、の代わりに挿入されます
オリジナル @file オプション。 場合 file 存在しないか、読み取ることができない場合、オプション
文字通りに扱われ、削除されません。

オプションで file 空白で区切られます。 空白文字が含まれる場合があります
オプション全体を一重引用符または二重引用符で囲むことにより、オプション内で。 どれでも
文字(バックスラッシュを含む)は、文字の前に付けることで含めることができます
バックスラッシュが含まれています。 NS file それ自体に追加の@が含まれる場合がありますfile オプション; どれか
このようなオプションは再帰的に処理されます。

onworks.net サービスを使用してオンラインで aarch64-linux-gnu-objcopy を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad