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.

Reply via email to