Build ID & reproducible build

Domenico Andreoli cavok at debian.org
Mon Dec 3 17:19:29 GMT 2018


On Sun, Dec 02, 2018 at 12:09:56PM -0500, Chris Lamb wrote:
> [keeping Domenico in CC until he asks to be dropped]

I'm now onboard, you can drop me. Thanks.

BTW, my mutt refuses to recognize this as a ml despite I configure it
so. Again, if the problem is not on my side I cannot be alone.


On Sun, Dec 02, 2018 at 02:48:47PM +0300, Daniel Kahn Gillmor wrote:
> On Sun 2018-12-02 11:25:47 +0100, Domenico Andreoli wrote:
> 
> >   in working at making dwarves [0] build reproducible I stumbled upon
> > the Build ID, which is just the root of tons of other diffs.
> >
> > diffoscope highlights:
> >
> > │ │ │ │  Displaying notes found in: .note.gnu.build-id
> > │ │ │ │    Owner                 Data size      Description
> > │ │ │ │    GNU                  0x00000014      NT_GNU_BUILD_ID (unique build ID bitstring)
> > │ │ │ │ -    Build ID: 6f3f14da239d0b68ba179ee7a2f2570c4d970db0
> > │ │ │ │ +    Build ID: c68caf4dba0ea46c05dddf9405bda4290c6ceaa6
> 
> The build ID is for associating debug files with their active binaries.
> They are deterministically generated from the binaries themselves.
> 
> So while it may look like a "root cause", i think you've got the
> causality reversed -- this is a symptom, and not a cause.  As long as
> any variation exists in the binaries, the build ID will differ. Once the
> binaries are concretely reproducible, the build ID will become
> reproducible too.

Nice, this makes a lot of sense.

Indeed on https://tests.reproducible-builds.org/debian/index_issues.html
I read that dwarves is affected by "gcc captures build path".  A quick
run with DEB_BUILD_OPTIONS=nostrip and my sbuilder confirms that.

I think I'll park this until [0] is merged upstream, I've more some
other stuff to get fixed first.

Is it possible that said patch to gcc is not merged yet? Any updates?

> i agree with you that this should be documented someplace.  i don't know
> whether it already is written up someplace though (i haven't really
> searched).

somehow it is, if you know where to look [1]

thanks to all, I've to the info I was looking for.

Kind regards,
Domenico


[0] https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00513.html
[1] https://salsa.debian.org/reproducible-builds/reproducible-notes/blob/master/issues.yml

-- 
3B10 0CA1 8674 ACBA B4FE  FCD2 CE5B CF17 9960 DE13



More information about the Reproducible-builds mailing list