3

私のビルドチェーンでは、これを行う必要があります:

objcopy -I binary -O $BFDNAME -B $BFDARCH <this> <that>

バイナリファイルをライブラリ形式にするため。他の人がこれを使用できるようにしたいので、ビルド実行するときにツールチェーンから$BFDNAMEと$BFDARCHを取得する方法を知る必要があります。すでに作成したファイルに対してobjdump-fを実行することでローカルで値を取得できますが、構成値を取得するためだけに使い捨てファイルをコンパイルしたままにしない、より良い方法はありますか?

4

2 に答える 2

3

これを指摘してくれてありがとう、レギュラーフライ!あなたの答えは、アーキテクチャをまったく指定せずに機能する別の解決策を見つけるのに役立ちました。

ld -r -b binary -o data.o data.txt

私のシステム(Ubuntu Linux、binutils 2.22)では、objcopyとldの両方のアプローチで同一のオブジェクトファイルが生成されます。

すべてのクレジットは次の場所に送られます: http ://stupefydeveloper.blogspot.de/2008/08/cc-embed-binary-data-into-elf.html

于 2012-07-31T14:43:56.273 に答える
2

For future reference, the answer seems to be this: the first entry in the output of objdump -i is the default, native format of the system.

于 2011-03-28T12:19:47.670 に答える