I did a man on ld and it says this about the build-id option
--build-id --build-id=style Request creation of ".note.gnu.build-id" ELF note section. The contents of the note are unique bits identifying this linked file. style can be "uuid" to use 128 random bits, "sha1" to use a 160-bit SHA1 hash on the normative parts of the output contents, "md5" to use a 128-bit MD5 hash on the normative parts of the output contents, or "0xhexstring" to use a chosen bit string specified as an even number of hexadecimal dig- its ("-" and ":" characters between digit pairs are ignored). If style is omitted, "sha1" is used.
The "md5" and "sha1" styles produces an identifier that is always the same in an identi- cal output file, but will be unique among all nonidentical output files. It is not intended to be compared as a checksum for the file’s contents. A linked file may be changed later by other tools, but the build ID bit string identifying the original linked file does not change.
Passing "none" for style disables the setting from any "--build-id" options earlier on the command line.
Looks to me like the none option does not turn it off but only clears any prior options set on the command line.
Maybe this is a bug in ld in terms of it always being on and you not having to explicitly setting it to turn it on.
/********************* Marc Karasek MTS Sun Microsystems mailto:marc.karasek@sun.com ph:770.360.6415 *********************/
Ed Swierk wrote:
On 12/3/07, Marc Karasek Marc.Karasek@sun.com wrote:
So this does not look like a ld problem, but an added feature to ld is causing us grief. If anyone can figure out how to turn this option off, that may fix all of this without any patches... :-)
Passing -Wl,--build-id=none to gcc turns off that ld feature. I haven't yet tracked down all the gcc invocations where it's needed.
--Ed