FS#29902 - [lib32-glibc] breaks some compiles in 64 bit

Attached to Project: Community Packages
Opened by Lara Maia (mrk3004) - Tuesday, 15 May 2012, 18:52 GMT
Last edited by Florian Pritz (bluewind) - Saturday, 02 June 2012, 13:29 GMT
Task Type Bug Report
Category Packages: Multilib
Status Closed
Assigned To Florian Pritz (bluewind)
Jan Alexander Steffens (heftig)
Architecture All
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

When installing lib32-glibc package, it creates the file /etc/ld.so.conf.d/lib32-glibc.conf containing the line: /usr/lib32

As the default setting in arch linux does not have any indicator for /usr/lib, some compilations become problematic and can not properly detect libraries.

The problem can be observed trying to build, for example, a version x64 of libgksu with lib32-glibc installed.

The problem is solved by deleting the file lib32-glibc.conf or create a new file (/etc/ld.so.conf.d/glibc.conf) with the line: /usr/lib

Additional info:
* lib32-glibc 2.15-10

Steps to reproduce:

1) Install multilib libraries and compilers

2) Try to compile this PKGBUILD
https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/libgksu

Steps to solve this:

1) Create the file /etc/ld.so.conf.d/glibc.conf with the line: /usr/lib

# echo "/usr/lib" > /etc/ld.so.conf.d/glibc.conf

2) and run # ldconfig

3) Now the PKGBUILD build fine.


This task depends upon

Closed by  Florian Pritz (bluewind)
Saturday, 02 June 2012, 13:29 GMT
Reason for closing:  Not a bug
Comment by Allan McRae (Allan) - Tuesday, 15 May 2012, 20:33 GMT
/usr/bin/ld: test-gksu.o: undefined reference to symbol 'gtk_init'
/usr/bin/ld: note: 'gtk_init' is defined in DSO /usr/lib/libgtk-x11-2.0.so.0 so try adding it to the linker command line

Nothing to do with glibc... and /usr/lib is there by default.
Comment by Lara Maia (mrk3004) - Tuesday, 15 May 2012, 21:09 GMT
if exists the file /etc/ld.so.conf.d/lib32-glibc.conf , /usr/lib32 becomes the default for lack of glibc.conf
Comment by Allan McRae (Allan) - Tuesday, 15 May 2012, 23:01 GMT
Umm... wrong... /lib and /usr/lib are always included and the linker is smart enough to chose the one for the correct architecture.

Where in your error output do you conclude glibc is involved in any way?
Comment by Lara Maia (mrk3004) - Tuesday, 15 May 2012, 23:41 GMT
Because simply delete the file lib32-glibc.conf everything back to normal.

If the file glibc.conf be included in the original glibc this not happen.

you see another possible cause?
Comment by Allan McRae (Allan) - Tuesday, 15 May 2012, 23:48 GMT
Yes...

/usr/bin/ld: test-gksu.o: undefined reference to symbol 'gtk_init'
/usr/bin/ld: note: 'gtk_init' is defined in DSO /usr/lib/libgtk-x11-2.0.so.0 so try adding it to the linker command line

This is the error. The library is entirely unrelated to glibc.

Do you really believe that no-one using lib32-glibc can build any software because of this "bug" but somehow you are the first person to notice it?
Comment by Lara Maia (mrk3004) - Wednesday, 16 May 2012, 00:06 GMT
This is so weird, my system completely ignores the /usr/lib for the simple fact there exists a file pointing to /usr/lib32. To return to work need to add in the configuration also /usr/lib.
Comment by Jan Alexander Steffens (heftig) - Wednesday, 16 May 2012, 10:38 GMT
I think this is an issue with libgksu's ancient autotools.

Loading...