Reserving specified size of RUNPATH entry in the dynamic section during linking

Jacob Kroon jacob.kroon@gmail.com
Sun Nov 28 14:24:25 GMT 2021


On 11/27/21 23:27, Tom Kacvinsky wrote:
> 
> 
> On Sat, Nov 27, 2021 at 5:05 PM Jacob Kroon via Gcc-help
> <gcc-help@gcc.gnu.org <mailto:gcc-help@gcc.gnu.org>> wrote:
> 
>     Hi,
> 
>     As part of an effort to make binaries reproducible regardless of their
>     build path, I need to enforce the same size of the RUNPATH entry in the
>     dynamic section during linking, even though I don't fill it completely.
>     Is it possible to give some flag to gnu ld that allows me to set it to a
>     specific size ? Or is there a way to patch the elf file after linking,
>     so that the entry has a specified size ?
> 
> 
> This tool doesn't quite do what you'd like (set a fixed size for the
> RUNPATH entry in the dynamic table), but I have found it quite
> useful:
> 
> https://github.com/NixOS/patchelf <https://github.com/NixOS/patchelf>
> 

Thanks for the tip, but I can't get patchelf to produce identical
binaries, unless the rpath is already padded up to a common size in both
of the binaries.

I've attached a small Makefile I use to test with.

Jacob
-------------- next part --------------
A non-text attachment was scrubbed...
Name: reproducible.mk
Type: text/x-makefile
Size: 596 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/gcc-help/attachments/20211128/f1c28303/attachment.bin>


More information about the Gcc-help mailing list