Estoy tratando de hacer que Protractor funcione para realizar pruebas angulares e2e, pero el transportador requiere Selenium, que requiere ChromeDriver, que requiere glibc
2.14. Mi caja de desarrollo actual está ejecutando Debian Wheezy, que viene con glibc
2.13. He leído que cambiar a la rama inestable de Debian proporcionaría acceso a glib-2.14
, pero por lo que he escuchado que inestable es bastante ... inestable.
¿Hay alguna manera de que pueda actualizar glibc
a 2.14 o 2.15 sin el riesgo de romper todo? ¿O es posible volver de la rama inestable de Debian si las cosas comienzan a romperse?
12:15:22.784 INFO - Executing: [new session: {browserName=chrome}] at URL: /session)
12:15:22.796 INFO - Creating a new session for Capabilities [{browserName=chrome}]
/home/chris/projects/personal/woddy/client/selenium/chromedriver: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by /home/chris/projects/personal/woddy/client/selenium/chromedriver)
/home/chris/projects/personal/woddy/client/selenium/chromedriver: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /home/chris/projects/personal/woddy/client/selenium/chromedriver)
12:15:43.032 WARN - Exception thrown
java.util.concurrent.ExecutionException: org.openqa.selenium.WebDriverException: java.lang.reflect.InvocationTargetException
Respuestas:
No tiene que cambiar a lo inestable para obtener glib> = 2.14. De hecho, la rama de prueba (ahora estable, o Jessie) tiene glib-2.17 que puede elegir simplemente agregando el repositorio de prueba y lanzando:
o,
Puede agregar el interruptor
--dry-run
para ver qué se instalará de antemano. Puede ver el estado del paquete glibc en el Sistema de seguimiento de paquetes de Debian (Debian cambió el nombre del paquete eglibc a simplemente glibc desde Jessie en adelante).También puede esperar el lanzamiento de Jessie el 25 de abril .
fuente
E: The value 'testing' is invalid for APT::Default-Release as such a release is not available in the sources
y el segundoE: Version '2.17-7' for 'libc6-dev' was not found
En mi situación, el error aparece cuando intento ejecutar una aplicación (compilada en Ubuntu 12.04 LTS) usando GLIBC_2.14 en Debian Wheezy (que instala glibc 2.13 por defecto).
Utilizo una forma complicada de ejecutarlo y obtengo el resultado correcto:
Descargar
libc6
ylibc6-dev
desde Ubuntu 12.04 LTSEjecute el
dpkg
comando para instalarlos en un directorio (/home/user/fakeroot/
por ejemplo):Ejecute su comando con especificado
LD_LIBRARY_PATH
:Mi aplicación solo usa
memcpy()
GLIBC_2.14, y funciona.No sé si funcionará con éxito para otras aplicaciones.
fuente
exec env LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND "$@"
para que el comando esté fácilmente disponible sin necesidad de especificar LD_LIBRARY_PATH cada vez.Supongo que hay varias opciones para que pruebes la rama inestable "de forma segura":
deboostrap que, para citar el artículo de Debian Wiki en este enlace, es
Esto no implica que
debootstrap
use la técnica de chrooting; No estoy al tanto de su implementación interna.fuente
debootstrap --arch amd64 jessie $MY_CHROOT http://http.debian.net/debian/
Gracias!