Estou tentando fazer com que o transferidor funcione para a realização de testes angulares e2e, mas o transferidor requer Selenium, que requer o ChromeDriver, que requer glibc
2,14. Minha caixa de desenvolvimento atual está executando o Debian Wheezy, que vem com a glibc
2.13. Eu li que a mudança para o ramo instável do Debian forneceria acesso glib-2.14
, mas pelo que ouvi instável é bastante ... instável.
Existe alguma maneira de atualizar glibc
para 2.14 ou 2.15 sem o risco de quebrar tudo? Ou é possível voltar do ramo instável do Debian se as coisas começarem a quebrar?
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
Respostas:
Você não precisa mudar para o instável para obter glib> = 2.14. De fato, o ramo de testes (agora estável, ou Jessie) possui o glib-2.17, que você pode escolher apenas adicionando o repositório de testes e iniciando:
ou,
Você pode adicionar a opção
--dry-run
para ver o que será instalado antes da mão. Você pode ver o status do pacote glibc no Sistema de Rastreador de Pacotes Debian (o Debian renomeou o pacote eglibc para simplesmente glibc a partir de Jessie).Você também pode esperar o lançamento de Jessie em 25 de abril .
fonte
E: The value 'testing' is invalid for APT::Default-Release as such a release is not available in the sources
e o segundoE: Version '2.17-7' for 'libc6-dev' was not found
Na minha situação, o erro aparece quando tento executar um aplicativo (compilado no Ubuntu 12.04 LTS) usando GLIBC_2.14 no Debian Wheezy (que instala o glibc 2.13 por padrão).
Eu uso uma maneira complicada de executá-lo e obtenho o resultado correto:
Faça o download
libc6
elibc6-dev
do Ubuntu 12.04 LTSExecute o
dpkg
comando para instalá-los em um diretório (/home/user/fakeroot/
por exemplo):Execute seu comando com o especificado
LD_LIBRARY_PATH
:Meu aplicativo usa apenas
memcpy()
do GLIBC_2.14 e funciona.Não sei se funcionará com sucesso para outros aplicativos.
fonte
exec env LD_LIBRARY_PATH=/home/user/fakeroot/lib/x86_64-linux-gnu/ YOUR_COMMAND "$@"
isso, para que o comando esteja facilmente disponível sem a necessidade de especificar LD_LIBRARY_PATH toda vez.Eu acho que existem várias opções para você experimentar o ramo instável "com segurança":
deboostrap que, para citar o artigo da Debian Wiki neste link, é
Isso não significa que
debootstrap
use a técnica de chrooting; Não estou ciente de sua implementação interna.fonte
debootstrap --arch amd64 jessie $MY_CHROOT http://http.debian.net/debian/
Obrigado!