2012-05-25 18 views
7

Actualmente tengo glibc que no admite epoll, así que instalé glibc nuevo en una ubicación no predeterminada que admite epoll. Tengo un programa de Python que usa este epoll.usa una versión diferente de glibc

Me trataron de establecer LD_LIBRARY_PATH

export LD_LIBRARY_PATH="/home/glibc/lib:$LD_LIBRARY_PATH"

entonces corro ls, me dio errores

ls: /home/glibc/lib/tls/libc.so.6: version 'GLIBC_2.4' not found (required by /lib/libpam.so.0)

ls: /home/glibc/lib/tls/libc.so.6: version 'GLIBC_2.4' not found (required by /lib/libpam_misc.so.0)

También cuando intenté funcionar pitón llegué

python: relocation error: /home/glibc/lib/tls/libc.so.6: symbol _dl_out_of_memory, version GLIBC_PRIVATE not defined in file ld-linux.so.2 with link time reference

¿Cómo puedo utilizar glibc recién instalado en lugar del predeterminado?

+0

http://stackoverflow.com/questions/847179/multiple-glibc-libraries-on-a-single-host –

Respuesta

0

Es necesario utilizar una invocación explícita del enlazador dinámico, por lo que algo como esto:

/home/glibc/lib/ld-linux-x86-64.so.2 --library-path /home/glibc/lib /usr/bin/python 

(Pero el hecho de que la versión GLIBC_2.4 símbolo no está disponible sugiere que algo está muy mal con la nueva glibc , o en realidad no es nada nuevo, anterior a glibc 2.4.)

0

Si compiló Glibc usted mismo, debe tener el script testrun.sh en su directorio de compilación. Esto es más sencillo y más fiable que el uso de ld-linux.so:

build/testrun.sh ls 
Cuestiones relacionadas