>>> Configuring source in /var/tmp/portage/dev-libs/libsodium-0.5.0-r1/work/libsodium-0.5.0 ... * econf: updating libsodium-0.5.0/config.sub with /usr/share/gnuconfig/config.sub * econf: updating libsodium-0.5.0/config.guess with /usr/share/gnuconfig/config.guess ./configure --prefix=/usr --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-silent-rules --disable-dependency-tracking --enable-asm --disable-blocking-random --disable-static checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu <skipped> checking if i686-pc-linux-gnu-gcc -std=gnu99 PIC flag -fPIC -DPIC works... yes checking if i686-pc-linux-gnu-gcc -std=gnu99 static flag -static works... *** Error in `/usr/lib/gcc/i686-pc-linux-gnu/4.8.2/../../../../i686-pc-linux-gnu/bin/ld': corrupted double-linked list: 0x08756e80 *** Here emerge hangs, and I have to press ctrl-c: ^C Exiting on signal 2 sandbox:stop caught signal 2 in pid 17118 sandbox:stop signal already caught and busy still cleaning up! /usr/portage/dev-libs/libsodium/libsodium-0.5.0-r1.ebuild: src_configure aborted; exiting.
Can you please test again with gcc-4.7?
An additional data point: it emerges fine on an ~amd64 computer (with gcc-4.8.2) but fails as described above on 2 ~x86 computers, a desktop and a netbook, with the same gcc version. I have not seen such failures while emerging other packages. Does libsodium configure use something unusual? I'll try with gcc-4.7 tomorrow.
(In reply to Manuel Rüger from comment #1) > Can you please test again with gcc-4.7? checking if i686-pc-linux-gnu-gcc -std=gnu99 static flag -static works... *** Error in `/usr/lib/gcc/i686-pc-linux-gnu/4.7.3/../../../../i686-pc-linux-gnu/bin/ld': corrupted double-linked list: 0x08755a80 ***
The same ~x86 computer, after upgrading gcc to 4.8.3: checking if i686-pc-linux-gnu-gcc -std=gnu99 static flag -static works... *** Error in `/usr/lib/gcc/i686-pc-linux-gnu/4.8.3/../../../../i686-pc-linux-gnu/bin/ld': corrupted double-linked list: 0x087562f8 ***
You can merge it with this: EXTRA_ECONF="--disable-pie" emerge --oneshot libsodium
(In reply to Alexander 'E-Razor' Krause from comment #5) > EXTRA_ECONF="--disable-pie" emerge --oneshot libsodium Thanks, this works
Feel free to test again with 0.6.0 :)
https://github.com/jedisct1/libsodium/issues/120 https://sourceware.org/bugzilla/show_bug.cgi?id=16428
Can can confirm that this issue still exists on 0.6.0-r1 for x86 and not x86_64 and that the suggested workaround is effective. I'm using gcc 4.8.3.
Workaround is needed for 0.6.1 too.
I can confirm it's still buggy in 0.6.1
Same bug in version 0.7.0
Confirm the same error in 0.7.0.
Version 1.0.0 suffers from the same bug. Workaround works.
Same for 1.0.1
Same for 1.0.2
(In reply to Alexander 'E-Razor' Krause from comment #5) > You can merge it with this: > EXTRA_ECONF="--disable-pie" emerge --oneshot libsodium Why is this workaround not used until https://sourceware.org/bugzilla/show_bug.cgi?id=16428 is solved?
+ 18 Feb 2015; Pacho Ramos <pacho@gentoo.org> libsodium-1.0.2.ebuild: + --disable-pie needed on x86 (#512734) +
LT_INIT AC_SUBST(LIBTOOL_DEPS) AC_ARG_VAR([AR], [path to the ar utility]) AC_CHECK_TOOL([AR], [ar], [ar]) in configure.ac should be moved before the hardened checks. This should be fixed upstream.