Re: [Autogen-users] FW: problem with auto-opts definition element . . .
Brought to you by:
bkorb
From: Bruce K. <bru...@gm...> - 2011-03-25 05:19:03
|
Hi, The stuff is *SUPPOSED* to be linked with -Wl,-R/usr/local/lib and that is *SUPPOSED* to force ldd to show /usr/local/lib/libopts.so.33 ahead of anything else in the /etc/ld.so.conf file. It has never been effective enough. On Thu, Mar 24, 2011 at 9:55 PM, Geof Sawaya <Geo...@ut...> wrote: > Figure out where autogen installed libopts.so.33 (I'm guessing > /usr/local/lib but I'm also x64-naive). Try providing symlinks from > places your distro likes better: > > ln -s /usr/local/lib/libopts.so.33 /usr/local/lib64 > ln -s /usr/local/lib/libopts.so.33 /usr/local/lib64/libopts.so The name of the 64 bit library directory under /usr/local in a hybrid environment is the subject of disagreement. I think /usr/lib64 implies /usr/local/lib64, but I am not a distro maintainer. You'd have to devise a scheme for deciding that all distros would agree on. Good luck. Meanwhile, my ld.so.conf contains: > /usr/X11R6/lib64 > /usr/X11R6/lib > /usr/local/lib64 > /usr/local/lib > /usr/x86_64-suse-linux/lib > /opt/kde3/lib > /lib64 > /lib > /usr/lib64 > /usr/lib > /opt/kde3/lib64 > include /etc/ld.so.conf.d/*.conf so "lib64" is always looked at before plain "lib" and both /usr/local directories are searched before /lib* and /usr/lib*. That works for me. Well, as long as I don't have a privately built library that gets upgraded to be more recent in /usr/lib64. At that point, I got to choose whether to break gcc or break my pre-release autogen. I chose obliterating /usr/local and starting over. :) Sorry it isn't any easier. > More generically, this is a question to pose to other users of Ubuntu: > how do I configure and install tool overrides in /usr/local/* ? I > can tell you I believe you will find you suffer from opposing strong > wills :) Your distro may feel strongly that 64-bit libs belong in > .../lib64, while autotools believes default-built shared libs go in > /usr/local/lib, not /usr/local/lib64. Exactly right. Unless and until there is a way to select lib directory names based on architecture for multi-architecture environments. |