On Mon, Nov 12, 2018 at 5:38 PM, Eric Grosse <gro...@gmail.com> wrote: > > (First-time post; please let me know if this is the wrong place to ask or > if I missed a previous post or issue when I searched. I'm willing to file > in https://github.com/golang/go/issues/new if that's the agreed way to keep > track, or to wait until I understand the linker infrastructure on ppc64le > and can propose a fix.) > > I have the impression that Go mostly achieves reproducible builds, but that > ppc64le is less widely used and so no one has reported the issue yet. > > > > ### What version of Go are you using (`go version`)? > go1.11.2 > > > ### Does this issue reproduce with the latest release? > yes > > > ### What operating system and processor architecture are you using (`go > env`)? > Ubuntu ppc64le > > ### What did you do? > Compared go binary built from source bootstrapping from Ubuntu packed > go1.11.2 and cross-compiled go from amd64. > > > ### What did you expect to see? > byte-for-byte identical > > > ### What did you see instead? > <pre> > ├── readelf --wide --symbols {} > │ @@ -14983,15 +14983,15 @@ > │ 14903: 0000000010926730 8 OBJECT LOCAL DEFAULT 28 > cgo_context_function > │ 14904: 0000000000000000 0 FILE LOCAL DEFAULT ABS > gcc_linux_ppc64x.c > │ 14905: 0000000010414b50 128 FUNC LOCAL DEFAULT [<localentry>: 8] > 13 threadentry > │ 14906: 0000000010926738 8 OBJECT LOCAL DEFAULT 28 setg_gcc > │ 14907: 0000000000000000 0 FILE LOCAL DEFAULT ABS gcc_setenv.c > │ 14908: 0000000000000000 0 FILE LOCAL DEFAULT ABS > gcc_traceback.c > │ 14909: 0000000000000000 0 FILE LOCAL DEFAULT ABS gcc_util.c > │ - 14910: 0000000000000000 0 FILE LOCAL DEFAULT ABS > /tmp/go-link-201992677/000014.o > │ + 14910: 0000000000000000 0 FILE LOCAL DEFAULT ABS > /tmp/go-link-967081304/000014.o > │ 14911: 0000000010414ff0 0 NOTYPE LOCAL DEFAULT 13 saveregs > │ 14912: 0000000010415084 0 NOTYPE LOCAL DEFAULT 13 restoreregs > │ 14913: 0000000000000000 0 FILE LOCAL DEFAULT ABS crtstuff.c > │ 14914: 00000000108a749c 0 OBJECT LOCAL DEFAULT 19 __FRAME_END__ > │ 14915: 0000000000000000 0 FILE LOCAL DEFAULT ABS > │ 14916: 00000000100016e0 0 NOTYPE LOCAL DEFAULT 13 > 00000018.plt_call.pthread_create@@GLIBC_2.17 > │ 14917: 0000000010001500 0 NOTYPE LOCAL DEFAULT 13 > 00000018.plt_call.fwrite@@GLIBC_2.17 > </pre>
Thanks. I believe this is a variant of https://golang.org/issue/13247. That issue refers to Solaris, but in general this will be a problem on any system where we call out to the external linker, as I believe we always do on ppc64le (see mustLinkExternal in cmd/link/internal/ld/config.go). Ian -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.