LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Two glibc versions, one system: Possible? (https://www.linuxquestions.org/questions/linux-software-2/two-glibc-versions-one-system-possible-226924/)

ellakano 09-05-2004 10:03 AM

Two glibc versions, one system: Possible?
 
I've been trying (and failing) to run Cinelerra (cvs.cinelerra.org), a video editing program.

The program consistantly crashes (see http://bugs.cinelerra.org/show_bug.cgi?id=112) for me, and apparently only me. The problem is currently suspected to be a lack of compatability witn NPTL support, with which the glibc binary provided by Debian Sid is apparently compiled.

The prospect of recompiling/downgrading everything on my machine to run with a non-NPTL version of glibc: Not Fun. :cry:

I'm wondering if there's an alternate way: would it be possible to keep a second, non-NPTL glibc on my system and let Cinelerra, and only Cinelerra, link against it or whatever would have to be done to make it work?

btmiller 09-05-2004 12:14 PM

Possible, yes; easy no. Probably the easiest way to do something like this is build/install a new glibc in some other directory and then set your LD_LIBRARY_PATH to that directory and statically link the executable with the different libc (that way you don't need to keep the libc around). There was a thread on usenet on how to do this, but it doesn't give a lot of details and I'm hesitant to say much more myself, since I've never actually tried this. If you search google groups for "glibc ld" with a date range including September 2 you should find the thread.

Remember, whatever you do, don't touch your current glibc or modify it in any way, otherwise you risk making your OS worthless (time for a reinstall).

foo_bar_foo 09-05-2004 12:40 PM

hi,
i think rh9 shipped with a ABI kernel patch thingy
that gives you what you need

try from a shell emulator
then start the app from that shell

export LD_ASSUME_KERNEL=2.2.5
this one gives you the libs in /lib very early LinuxThreads code which had fixed size threads

or

export LD_ASSUME_KERNEL=2.4.1
this one gives you the libs in /lib/i686 more modern LinuxThreads code with foating stack


and see if it works better

the NTPL code is
export LD_ASSUME_KERNEL=2.4.20
this one gives you the libs in /lib/tls that are NPTL

ellakano 09-05-2004 04:28 PM

Quote:

Originally posted by foo_bar_foo
export LD_ASSUME_KERNEL=2.4.1
this one gives you the libs in /lib/i686 more modern LinuxThreads code with foating stack
I think this is the one I want. But I don't quite get *when* I should run that command...before I run a configure/compile of the program? Or before I run the program itself?


All times are GMT -5. The time now is 02:08 PM.