It there a way to see what compiler and flags were used to create an executable file in *nix? I have an old version of my code compiled and I would like to see whether it was compiled with or without optimization. Google was not too helpful, but I’m not sure I am using the correct keywords.
Share
gcc has a
-frecord-gcc-switchesoption for that:Afterwards, the ELF executables will contain
.GCC.command.linesection with that information.Of course, it won’t work for executables compiled without that option.
For the simple case of optimizations, you could try using a debugger if the file was compiled with debug info. If you step through it a little, you may notice that some variables were ‘optimized out’. That suggests that optimization took place.