[fpc-devel] BuildID

Mark Morgan Lloyd markMLl.fpc-devel at telemetry.co.uk
Sat Jun 29 10:07:51 CEST 2013

I've been building firewalls over the last few days using Debian 
"Wheezy" (i.e. current/stable), and notice that the  file  command now 
shows executables created by gcc etc. with a buildid:

$ file /usr/src/netdate/trunk/netdate
/usr/src/netdate/trunk/netdate: [...] dynamically linked (uses shared 
libs), for GNU/Linux 2.6.26, 
BuildID[sha1]=0x1edca47e667ad763724c1ea85da7029b03c0dc62, not stripped

I think this facility was introduced by ld version 2.18. Is this 
something that FPC should be considering? Even if it weren't used to 
store a checksum of the "normative parts" of a binary, having an encoded 
description of the compiler (version triplet, optional revision etc.) 
could possibly be useful.

Possibly the most useful thing would be using it to indicate the exact 
CPU that a binary was compiled for, since as I understand it this is an 
area not well covered by the ELF headers.

Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk

[Opinions above are the author's, not those of his employers or colleagues]

More information about the fpc-devel mailing list