On Sat, Jan 28, 2012 at 10:02 PM, Oliver Burger <obgr_seneca@mageia.org> wrote:
2012/1/28 Mike Gabriel <mike.gabriel@das-netzwerkteam.de>:
I am not at all an expert on this, I can only report the latest approaches in Debian here.
On systems /usr/lib is the default folder for libraries that are built for the same architecture as the system itself. There also should be a symlink from lib64 -> lib. For other architectures there can be other lib folders (e.g. /usr/lib32 for ia32 stuff).
On multi-arch systems (like currently under development in Debian sid) there are lib folders for each architecture
/usr/lib/<arch>/
So basically, installing code to /usr/lib should be fine. It's a bit different in Mageia and iirc the other rpm based distros. Normally /usr/lib/ is used here for 32bit libraries, x86_64 is for 64bit libraries. This is especially neccessary if you have to install 32bit and 64bit versions of the same library next to each other.
Debian solves this differently: all library packages that are supposed to be co-installable across archs get installed to /usr/lib/$triplet/lib.foo. This way, you can install sparc 64bit or arm packages on your 32bit i386 laptop. This can be useful for example for cross-compiling, etc.
But looking into some of those files, lib is hardcoded there, so it would need quite some patching to make them installable in lib64. But since all but x2goslitewrapper is actually noarch, it will perhaps not hurt much... Especially as different from what I had in mind, our build system does not block arch dependant 64bit binaries to be installed in /usr/lib :)
Yeah, probably the makefiles should be extended to make the the libdir ($PREFIX/$LIBDIR, with $LIBDIR being either /lib, /lib32 or /lib64) configurable.
-- regards, Reinhard