This is the mail archive of the
mailing list for the GCC project.
Re: libgo patch committed: Update to current version of Go library
On Thu, Feb 7, 2013 at 2:26 AM, Uros Bizjak <firstname.lastname@example.org> wrote:
> Thanks, I have tested it on CentOS 5.9. However, for some reason, I
> got unrelated linker errors that prevents further testing:
> === libgo tests ===
> ./a.out: error while loading shared libraries:
> ELF file OS ABI invalid
This is not, of course, related to Go.
It looks like libgo.so.3 and libatomic.so.1 got created with the
EI_OSABI field set to ELFOSABI_GNU, and it looks like your kernel is
too old and does not know about that. I assume that you are using a
new version of the binutils, not the one that comes with the system.
Are you using GNU ld or gold? In general the linker will set EI_OSABI
to ELFOSABI_GNU if it sees a STB_GNU_UNIQUE symbol or a STT_GNU_IFUNC
symbol. As far as I know neither libgo nor libatomic have either type
of symbol. So I'm not sure where this is coming from.
If you start again and configure GCC to use the system binutils rather
than a newer binutils, then you should be safe in not getting any
UNIQUE or IFUNC symbols. I don't know if you might run into other