Hi, I'm told libs should install in lib64 (as opposed to lib) when on x86_64 (and, looking on the web, a few more archs). I looked at a few libs (libogg, liboggz, libtheora), and none of them do this either. I'd have expected at least libogg, which has got to be used pretty much everywhere, to have been changed to do so if this was the "right thing" to do. It's said to be the "right thing" in the FHS, though I'm not too certain if that would break many old libs, but I thought I'd mention it. And maybe see if some people who are knowledgeable about this have something to say :) Cheers
ogg.k.ogg.k at googlemail.com wrote:> I'm told libs should install in lib64 (as opposed to lib) when on > x86_64 (and, looking on the web, a few more archs).Its a little more complex than that. On x86_64, you can either install a 32 or a 64 bit base system. If you install a 32 bit base system, then 64 bit libs should be installed in /lib64, /usr/lib64 and so on. However, if you install a 64 bit base system, then the 32 bit libraries should be install in /lib32, /usr/lib32 and so on. In both cases, the native libs (ie native to the base install) are installed in /lib, /usr/lib and so on.> I looked at a few libs (libogg, liboggz, libtheora), and > none of them do this either. I'd have expected at least libogg, which > has got to be used pretty much everywhere, to have been changed to > do so if this was the "right thing" to do.Automake/autoconf/libtool should just do "the right thing" by default. Erik -- ----------------------------------------------------------------- Erik de Castro Lopo ----------------------------------------------------------------- Fundamentalist : Someone who is colour blind and yet wants everyone else to see the world with the same lack of colour.
> On x86_64, you can either install a 32 or a 64 bit base system. > > If you install a 32 bit base system, then 64 bit libs should be > installed in /lib64, /usr/lib64 and so on. > However, if you install a 64 bit base system, then the 32 bit > libraries should be install in /lib32, /usr/lib32 and so on.That makes more sense, I suppose, is this to allow code that's broken on 64 bit platforms to still be used ? Out of curiosity, how would you go about building a 32 bit lib on a x86_64 bit system (or the other way round) ? Would you have to cross compile ?> In both cases, the native libs (ie native to the base install) > are installed in /lib, /usr/lib and so on.OK, thanks for the correction. It does make much more sense to me that way.> Automake/autoconf/libtool should just do "the right thing" by > default.Which they probably do - I'm running a 64 bit kernel, so that explains the lib rather than lib64. Thanks a lot.