次のコマンドラインを見てください。
gcc -o hello -Wall -D_BSD_SOURCE hello-world.c
「hello」実行可能ファイルに対していくつかの処理を実行してこれらのオプションを理解する方法はありますか?
ベストアンサー1
残念ながらそうではありません。しかし、バイナリを作る前に考えてみると、いくつかの方法があります。ここにもう一つあります。最近のgccでは、探している説明を含むELFファイルにセクションを追加する-frecord-gcc-switchesオプションを使用できます。
$ gcc -frecord-gcc-switches -o hello -Wall -D_BSD_SOURCE hello-world.c
$ readelf -p .GCC.command.line hello
String dump of section '.GCC.command.line':
[ 0] -D _BSD_SOURCE
[ f] hello-world.c
[ 1d] -mtune=generic
[ 2c] -march=x86-64
[ 3a] -Wall
[ 40] -frecord-gcc-switches
ご覧のとおり、明示的に提供されたオプションだけでなく、使用されているすべてのオプションも表示されます。