On 9/24/06, Arnie Stender <[EMAIL PROTECTED]> wrote:
Thanks for the great info. I started poking around and it looks like I
have really messed things up. I have both /usr/lib and /usr/lib64 with a
libpopt in both. They are different.
[EMAIL PROTECTED]:/usr/src/secondary/libgnome-2.14.1$ ls -l
/usr/lib/libpopt.so.0.0.0
- -rwxr-xr-x 1 root root 94453 2006-07-10 20:43 /usr/lib/libpopt.so.0.0.0
[EMAIL PROTECTED]:/usr/src/secondary/libgnome-2.14.1$ ls -l
/usr/lib64/libpopt.so.0.0.0
- -rwxr-xr-x 1 root root 98611 2006-08-27 18:28 /usr/lib64/libpopt.so.0.0.0
[EMAIL PROTECTED]:/usr/src/secondary/libgnome-2.14.1$
I have the tar ball for both v1.7 and v1.10.4. Since the older files are
in /usr/lib I am assuming that is version 1.7 and the one in /usr/lib64
is the 1.10.4. Can I get away with just deleting the /usr/lib64 version
and recompiling and reinstalling into /usr/lib or is this going to be
more painful.
I think you might be able to get away with just deleting the ones in
/usr/lib64 and running ldconfig to rebuild the linker cache. Safest
would be to recompile any packages that link to libpopt, but you might
want to try again without it. But if they're different versions, like
you think, it's very possible that there are API differences between
the two and they'll choke on the different ones. Certainly I would try
running first and waiting for problems before tracking back to
recompile things linking to popt.
When I looked at the /usr/lib64 there are also libs in
there for libGLcore and libGL. Do I need to do anything about that? Can
I put the files from /usr/lib64 into /usr/lib and just link /usr/lib64
to /usr/lib? What is the reason for putting all the libs in /usr/lib in
a pure 64 system? Wouldn't it have been better to put them all in
/usr/lib64?
I'd try the same thing here. These are from Mesa. The libraries are
only pulled in at runtime by the dynamic linker, so moving it to
/usr/lib and running ldconfig should be enough. Unless things are
setting RPATH, but it should still work because the linker will fall
back to the default paths. I wouldn't do the symlink from lib64 -> lib
because I think it's a hack, but I'm not the one with the 64 bit
system. Possibly, there are parts of X that have hardcoded the
location of libGL, but I don't think so. Not that I can remember,
anyway.
I think the reason you want to install into lib by default is ease.
Any stupid packages are just going to install into lib by default, so
you've got that covered by making that your default library directory.
The smart ones will find out from libtool (or some other means) where
they should be installing their libraries. So, building a straight 64
bit system can be less painful if you let the libraries go to lib by
default. Multilib systems seems to have a much more daunting task of
making the packages DTRT.
--
Dan
--
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page