-   Slackware (
-   -   Location of libraries in /usr/lib/ or /usr/lib64/ in Slackware64 (

niels.horn 06-23-2009 10:43 PM

Location of libraries in /usr/lib/ or /usr/lib64/ in Slackware64
Today I was adapting several SlackBuild scripts to test some applications in Slackware64.

I understood from several threads and articles that in 64-bit Linux distributions that the libraries should go in /lib64 or /usr/lib64

Now I noticed that some Slackware64 packages still put files in /usr/lib/ like:

- cdrtools-2.01.01a57-x86_64-3: /usr/lib/siconv/*
- crda-1.0.1-x86_64-2:          /usr/lib/crda/regulatory.bin
- rpm-4.7.0-x86_64-2:          /usr/lib/rpm/*
- syslinux-3.52-x86_64-1:      /usr/lib/syslinux/*
- trn-3.6-x86_64-2:            /usr/lib/trn/*

Are these files in /usr/lib/ for some compatibility reason or has this simply passed unnoticed while recompiling packages for Slackware64?

Is there any *problem* in leaving files in /usr/lib/ instead of /usr/lib64/ ?
Apparently it works - in these packages and in several I compiled without changing the lib folder to lib64 ...

Alien Bob 06-24-2009 03:01 AM

The files you find in lib/ directories are either scripts or firmwares, that can be used by 64bit as well as 32bit programs. The files in lib64/ directories are meant to be used exclusively by 64bit binaries.

When you compile a 64bit program but install the libraries into a lib/ directory, your program will run just fine. You will only run into problems when you want other programs to link against your application's shared libraries. They will not be found (because your program's pkg-config files will go into /usr/lib/pkgconfig for instance).


niels.horn 06-24-2009 04:25 AM

Ah ok... Things are clearing up for me now!

The dark side is not clouding things for me anymore :D

All times are GMT -5. The time now is 05:21 PM.