Linux - SoftwareThis forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Hi to all,
The situation may sound simple to an expert, but for me there's a missing link (yep! a link is exactly what i miss. Well i miss a lot of them!! Whew!!!): I've successfully configured & compiled glibc-2.3.90 with gcc-4.0.0 (!) and i've made a test make install on a ./configure --prefix=/usr/glibc-cvs (a test dir). Then i was tired of waiting and re-configured the package - without making clean - with --prefix=/usr, i built, then installed, and... WOW the install script went out with an error, it didn't find a shared object. Needless to say when i rebooted the bash shell was unable to load its shared objects. So i used a rescue disk, installed a statically linked shell and managed to relink to the previous libraries (glibc-2.2.5). I did so in the /lib directory and after having set LD_LIBRARY_PATH and PATH on all needed dir i came out with a *PERFECTLY* rescued linux box, now relying on glibc-2.2.5. So i finally thought "Now is time to reboot!", but, alas! After the reboot all was *exactly* as before i did all that magic. I checked out shutdown & startup scripts but found nothing, i wonder if there is any script or configuration file which does the trick. By the way i'm on a deeply modified slackware8.1 distro, but all was working perfectly just before that F*****G make install.
Another interesting thing i may add is that if i install the glibc-solibs (Glibc-2.2.5 shared libraries an binaries) from the rescue disk, after a reboot with the hd loader, i'll find once again all the sym links pointing to the glibc-2.3.90. That's frustrating! I can't see why it happens!
Please if you have any hint i would appreciate it a lot!
Thank you in advance for any help, regards,
Max.
The problem is probably that your start-up scripts are running /sbin/ldconfig, which is finding glibc-2.3.90 as a prefered library to glibc-2.2.5, and is using that.
After installing glibc-2.3.90, you will need to recompile all software that relied on glibc-2.2.5 to use the new library, as they are binary incompatible. (This is the vast majority of software on your system; ever wondered why distros don't ship with glibc upgrades?).
You could try moving glibc-2.3.90 to a different directory and including that directory on the front of LD_LIBRARY_PATH only for software that you actually want to use it. (Someone tell me if that won't work!)
You attempted to replace glibc on a running system? No offence, but wow dude, that's not exactly the smartest thing I've ever heard. I've broken slackware before trying to do that.
If you wish to replace glibc, you MUST USE PATRICK'S upgrade script and package the newly-built glibc in .tgz format.
Modify the scripts to work for your libc. I have used these scripts before to build an NPTL'd 2.3.4 libc (this was before the NPTL upgrade) and it worked flawlessly.
Once you build the .tgz, use the upgradepkg command to replace the libc you're running. This should fix the linker errors because the install script manually links if ldconfig is screwing up.
Last edited by black hole sun; 05-19-2005 at 02:45 PM.
Ok, thank you for your answers. About the reboot problem, i can say i managed to solve it by erasing 2.3.90 glibc files from my /lib directory. Doing so stopped the symbolic links to point to newer glibc after any reboot, so my linux box is stable again but linking to glibc-2.2.5.
I did a new try by making the ld-linux.so.2 point to the /usr/cvs-glibc/lib/ld-2.3.90.so linker and putting /usr/cvs-glibc/lib into LD_LIBRARY_PATH, but then programs were complaining they didn't find some libraries like libtermcap.so.2 or libncurses.so.5. It seemed to be solved adding /usr/lib to LD_LIBRARY_PATH, but when rebooting some startup called program like ext2fsck failed to find libraries. I restored the previous situation and all went well.
Anyways i still don't understand why compiling glibc and installing it in a dedicated directory won't work, is it caused by the fact that binaries coming with the distro were linked against the older glibc version?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.