有没有办法找出编译特定二进制文件的gcc标志?
快速浏览GCC文档并没有改变任何事情.
Boost人是那里最聪明的C++开发人员之一,他们采用命名约定,因为这通常是不可能的任何其他方式(可执行文件可能已经由任意数量的语言,任何数量的编译器版本创建,毕竟).
(稍后添加): 如果在编译代码时要求GCC在4.3中有此功能:
新的命令行开关-frecord-gcc-switches ...导致用于调用编译器的命令行被记录到正在创建的目标文件中.此记录的确切格式取决于目标和二进制文件格式,但它通常采用包含ASCII文本的注释部分的形式.
实验证明:
diciu$ gcc -O2 /tmp/tt.c -o /tmp/a.out.o2 diciu$ gcc -O3 /tmp/tt.c -o /tmp/a.out.o3 diciu$ diff /tmp/a.out.o3 /tmp/a.out.o2 diciu$
我把它视为不,因为二进制文件是相同的.