1

ELF ファイルのセクションを削除し、内容を少し変更した別のセクションに置き換える必要があるプロジェクトがあります。最初に元のセクションを削除してから、objcopy を使用して目的のセクションを追加することができました。しかし、私は常に次の警告を受け取ります:

 warning: allocated section `.nv_fatbin' not in segment

これにより、セクションがメモリにロードされず、目的の機能が実現されません。

それを追加してセグメントに戻す最良の方法は何ですか?

自由?または、objcopy を使用してこれを実現できますか?

4

1 に答える 1

3

objcopy の--update-sectionオプションを使用することもできます。

objcopy マニュアルからの抜粋 ( https://sourceware.org/binutils/docs/binutils/objcopy.html ):

--update-section セクション名=ファイル名

sectionname という名前のセクションの既存の内容をファイル filename の内容に置き換えます。セクションのサイズは、ファイルのサイズに合わせて調整されます。sectionname のセクション フラグは変更されません。ELF 形式のファイルの場合、セクションからセグメントへのマッピングも変更されず、--remove-section の後に --add-section を使用することはできません。オプションは複数指定できます。

: これには binutils v2.26 以降が必要です。

于 2017-03-23T14:58:37.230 に答える