You are not logged in.

#1 2014-02-09 05:41:00

mephage
Member
Registered: 2011-09-28
Posts: 6

libx32-glibc fails to build - /usr/bin/ld: cannot find -lgcc

I am trying to run steam using my own runtime libraries, however I'm missing libcrypt.so.11

After trawling through a chain of dependencies, I'm stuck on libx32-glibc.

When attmpting to build libx32-glibc I encounter an error while gcc is trying to compile elf/librtld.mapT

[myusername@hostname libx32-glibc]$ makepkg -R
==> Making package: libx32-glibc 2.18_12-1 (Sun Feb  9 18:12:22 NZDT 2014)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Removing existing pkg/ directory...
==> Entering fakeroot environment...
==> Starting package()...
LANGUAGE=C LC_ALL=C; export LANGUAGE LC_ALL; \
make -r PARALLELMFLAGS="" -C /home/myusername/aur/libx32-glibc/src/glibc-2.18 objdir=`pwd` install
make[1]: Entering directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18'
make  subdir=csu -C csu ..=../ subdir_lib
make  subdir=iconv -C iconv ..=../ subdir_lib
make[2]: Entering directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/iconv'
make[2]: Nothing to be done for 'subdir_lib'.
make[2]: Leaving directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/iconv'

...

make[2]: Entering directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/login'
make[2]: Nothing to be done for 'subdir_lib'.
make[2]: Leaving directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/login'
make  subdir=elf -C elf ..=../ subdir_lib
make[2]: Entering directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/elf'
/opt/gcc-x32-seed/bin/gcc -mx32 -B/opt/gcc-x32-seed/lib/gcc/x86_64-unknown-linux-gnu/4.8.2/ -Wl,-O1,--sort-common,--as-needed,-z,relro  -nostdlib -nostartfiles -r -o /home/myusername/aur/libx32-glibc/src/glibc-build/elf/librtld.map.o '-Wl,-(' /home/myusername/aur/libx32-glibc/src/glibc-build/elf/dl-allobjs.os /home/myusername/aur/libx32-glibc/src/glibc-build/libc_pic.a -lgcc '-Wl,-)' -Wl,-Map,/home/myusername/aur/libx32-glibc/src/glibc-build/elf/librtld.mapT
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status
Makefile:285: recipe for target '/home/myusername/aur/libx32-glibc/src/glibc-build/elf/librtld.map' failed
make[2]: *** [/home/myusername/aur/libx32-glibc/src/glibc-build/elf/librtld.map] Error 1
make[2]: Leaving directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18/elf'
Makefile:236: recipe for target 'elf/subdir_lib' failed
make[1]: *** [elf/subdir_lib] Error 2
make[1]: Leaving directory '/home/myusername/aur/libx32-glibc/src/glibc-2.18'
Makefile:12: recipe for target 'install' failed
make: *** [install] Error 2
==> ERROR: A failure occurred in package().
    Aborting...

In accordance with this solved topic for a similar issue, I have ensured that options=('staticlibs') is present in PKGBUILD:

options=('!strip' '!emptydirs' 'staticlibs')

I have tried re downloading and compiling all the src but the same issue occurs.

Here is a list of gcc/glibc/multilib packages that I have installed:

[mephage@tws01 exercise1]$ pacman -Q | grep -E -e 'multilib|gcc|glibc'
binutils-multilib 2.24-1
gcc-libs-multilib 4.8.2-7
gcc-multilib 4.8.2-7
gcc-x32-seed 4.8.2_7-1
glibc 2.18-12
glibc-x32-seed 0.1.0-1
lib32-gcc-libs 4.8.2-7
lib32-glibc 2.18-12
libtool-multilib 2.4.2-12

Here is a list of aur packages that I have installed:

[mephage@tws01 exercise1]$ pacman -Qm
gcc-x32-seed 4.8.2_7-1
glibc-x32-seed 0.1.0-1
linux-ck 3.12.9-3
linux-ck-headers 3.12.9-3
nvidia-ck 331.38-2
xdm-arch-theme 2.3.1-3

Offline

#2 2014-02-23 04:53:21

mephage
Member
Registered: 2011-09-28
Posts: 6

Re: libx32-glibc fails to build - /usr/bin/ld: cannot find -lgcc

Still haven't resolved this. However, I did see that there is more information in /home/myusername/dir-where-i-extract-aur-tarballs/libx32-glibc/src/glibc-build/config.log:

/usr/bin/ld: cannot find -lgcc
/usr/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
/usr/bin/ld: skipping incompatible /usr/lib/libc.a when searching for -lc
/usr/bin/ld: cannot find -lc
/usr/bin/ld: cannot find -lgcc
collect2: error: ld returned 1 exit status

My guess is that I need a compatible libc.so so that /usr/bin/ld can create the links using gcc.

Edit: Removed a line that was incorrect

Last edited by mephage (2014-02-23 04:54:07)

Offline

#3 2014-02-23 13:37:43

Lone_Wolf
Administrator
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 15,401

Re: libx32-glibc fails to build - /usr/bin/ld: cannot find -lgcc

have you tried building with https://aur.archlinux.org/packages/gcc-multilib-x32/  installed ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.

clean chroot building not flexible enough ?
Try clean chroot manager by graysky

Offline

#4 2014-02-23 13:57:45

falconindy
Developer
From: New York, USA
Registered: 2009-10-22
Posts: 4,111
Website

Re: libx32-glibc fails to build - /usr/bin/ld: cannot find -lgcc

I doubt it's libcrypt which you need. I'm sure it's actually libgcrypt, which means you need to build an older version of lib32-libgcrypt.

Also note that libx32-glibc is for the x32 ABI, not the 32-bit x86 ABI. You won't get anything interesting out of building that package.

Offline

#5 2014-02-28 12:32:41

mephage
Member
Registered: 2011-09-28
Posts: 6

Re: libx32-glibc fails to build - /usr/bin/ld: cannot find -lgcc

You were right, I was barking up the wrong tree...

All I had to do was install lib32-libgcrypt15 from AUR (see link for more details):
https://bbs.archlinux.org/viewtopic.php?id=175639

Thanks for the help.

Note: I never got libx32-glibc compiling but as it's not the cause of my problem, I didn't need to.

Last edited by mephage (2014-02-28 12:34:08)

Offline

Board footer

Powered by FluxBB