Tentando executar o Game Dev Tycoon no Ubuntu 64. Ele solicita o objeto acima.
Eu corri sudo apt-get install libudev1:i386
e ele voltou já instalado.
Eu tenho, /lib/i386-linux-gnu/libudev.so.1
mas não em libudev.so.0
lugar algum.
Tentando executar o Game Dev Tycoon no Ubuntu 64. Ele solicita o objeto acima.
Eu corri sudo apt-get install libudev1:i386
e ele voltou já instalado.
Eu tenho, /lib/i386-linux-gnu/libudev.so.1
mas não em libudev.so.0
lugar algum.
Respostas:
Para o Ubuntu de 64 bits, ele está no pacote libudev0 de 32 bits.
Você pode instalar isso com o seguinte comando:
sudo apt-get install libudev0:i386
Este pacote foi removido do Ubuntu em 14.04. Você precisará instalá-lo a partir de uma versão mais antiga.
Para corrigir, vinculei libudev.so.1
a libudev.so.0
:
sudo ln -sf /lib/$(arch)-linux-gnu/libudev.so.1 /lib/$(arch)-linux-gnu/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
O método mais fácil que encontrei foi baixar o .deb ( link direto para o download de 64 bits e o download de 32 bits ) e clicar duas vezes nele para instalá-lo ou usar o dpkg para instalá-lo:
dpkg -i libudev0_175-0ubuntu9_amd64.deb
Na versão anterior do ubuntu, este pacote estava disponível nos repositórios oficiais. Você pode instalar com o seguinte:
sudo apt-get install libudev0:i386
Eu tive o mesmo problema para um programa diferente, mas a resposta aceita por Sean não me ajudou em nada. Na minha instalação atualizada do 13.04 de 64 bits, o libudev0 não está disponível no formato de 64 bits ou no i386. E o ia32-libs já está instalado. Portanto, não há dados.
O que eu tive que fazer foi uma versão mais modificada da solução senshikaze, mais técnica. Eu vinculei manualmente o libudev.so.0 a libudev.so.1 no diretório lib x86_64, assim:
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
Isso consertou para mim.
Este erro pode ocorrer ao tentar usar o nw executável do Node Webkit . Como isso:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
Obtenha o editor hexadecimal que permite alterar a sequência ASCII do binário, por exemplo. hexedit :
sudo apt-get install hexedit
.cd ~/Dokumenty/node-webkit-*
.sudo
:
sudo hexedit nw
.libudev.so.0
como string ASCII:
libudev.so.0
.0
na libudev.so.0
string para 1
, por isso se torna: libudev.so.1
:
0
na libudev.so.0
string.Você Terminou. Isso também corrige o problema com o binário Atraci ao seguir as mesmas instruções, exceto a edição hex do arquivo Atraci em vez de nw.
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
chmod a+x fixed_nw
e , em seguida, você pode executá-lo, sem precisar instalar nada
A única resposta aqui que funciona no Ubuntu 14.04 é a resposta aceita e, como muitos comentários apontam que isso pode causar problemas com o sistema no futuro (embora eu não saiba nada disso), cheguei a um compromisso. Este script solicitará (no terminal) sua senha root. Ele criará o link simbólico e iniciará o aplicativo (no meu caso, hora da pipoca). Quando você sai do aplicativo, ele usa a sessão sudo existente para remover o link simbólico:
#!/bin/sh
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
./Popcorn-Time #replace this line with the path to the executable you want to launch
sudo rm /lib/i386-linux-gnu/libudev.so.0
Acabei de encontrar uma maneira de fazer isso funcionar, é bem bobo.
Eu tenho o Google Chrome instalado no meu sistema e o Chrome tem esse objeto compartilhado incorporado. Então, eu apenas tive que criar um link simbólico para a biblioteca no diretório de instalação do Chrome.
ln -sf /opt/google/chrome/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0
Funciona muito bem para mim.
Esta foi a solução mais simples que encontrei
sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
como Phil Strong apontou
instalar libudev.so.1
sudo apt-get install libudev1:i386
então vincule-o como libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
Eu fiz isso em 14.04, mas deve ser semelhante. basta excluir o pacote e reinstalar. as bibliotecas corretas são instaladas adequadamente.
apt-get purge google-chrome-stable
apt-get install google-chrome-stable
Tenho certeza de que as outras respostas funcionam, mas tenho uma base básica na modificação de objetos do sistema de arquivos gerenciados por pacotes de gerenciamento de configuração.
Isto é o que eu costumava resolver o mesmo problema no Ubuntu 15.04 de 32 bits.
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
ATUALIZAÇÃO Criei um script bash para envolver o programa que você deseja executar. Você pode adicioná-lo à sua pasta bin local e apenas iniciar o programa sem copiar e colar ou executar scripts de shell.
#!/bin/bash
ProgramToExecute="/PATH/TO/PROGRAM" #Example: $HOME/dart/./DartEditor
system=$(uname -m) #Returns x86_64 on 64 bit systems
libdir="/lib/$system-linux-gnu"
libudev1="$libdir/libudev.so.1"
if [ ! -f $libudev1 ]
then
#check if an i386 folder exist because ' uname -m' returns i686 instead of i386.
libdir="/lib/i386-linux-gnu"
libudev1="$libdir/libudev.so.1"
#if none of the lookups return a file, this script exits,
BreakUpNotice="This $libudev1 isn't working out. It's not you
it's me. Or maybe you forgot to install libudev1 library.
sudo apt-get install libudev1 "
[ ! -f $libudev1 ] && echo $BreakUpNotice && exit 0
fi
libudev0="$libdir/libudev.so.0"
echo "$libudev1 found."
sudo ln -sf $libudev1 $libudev0
sudo -k #revoke sudo
$($ProgramToExecute)
NoticeAfterExec="Enter sudo to del libudev link (recommended) or press CTRL+C to cancel."
RmSuccess="And $libudev0 link is gone."
RmFailed="Whaat? $libudev0 still exists."
echo $NoticeAfterExec
sudo rm $libudev0
sudo -k
[ ! -f "$libudev0" ] && echo $RmSuccess || echo $RmFailed
exit
RESPOSTA ANTIGA No Ubuntu 14.04, eu recebia a mensagem de erro do Dart Editor ao tentar usar o Live Preview (Chromium). O erro foi resolvido instalando o libudev1 e criando um link simbólico .
sudo apt-get install libudev1
Eu também usei o script mencionado acima por TenLeftFingers para executar o DartEditor.
#!/bin/sh
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
./DartEditor
sudo rm /lib/i386-linux-gnu/libudev.so.0
Se o Dart Editor não executar, verifique se o JAVA está instalado e se isso não é um problema de permissão.
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
e torne o IDE executável:
sudo chmod a+x ./DartEditor
Isso funcionou para mim.
Eu estava recebendo o mesmo erro no meu sistema de 32 bits após a atualização do Xubuntu Precise para Trusty. Isso corrigiu para mim:
sudo dpkg-reconfigure google-chrome-stable
Encontrei aqui . Com absolutamente nenhum parâmetro, não tenho certeza de como isso foi corrigido, mas foi o que aconteceu. O que eu mais gostei é que não era necessário fazer nada que potencialmente causasse problemas para mim no futuro, nem exigir que eu caçasse nenhum pacote.
Se alguém se deparar com esta página enquanto procura na web correções no libudev.so.0 e no Emotiv Epoc SDK Dev Edition no Ubuntu, espero que o seguinte ajude:
// minha configuração é o Ubuntu 13.04 de 64 bits
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1. /lib/x86_64-linux-gnu/libudev.so.1
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /usr/lib/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1. /lib/i386-linux-gnu/libudev.so.1
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0
sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /usr/lib/libudev.so.0
O EmotivControlPanel, EmoKey, EmoComposer, os exemplos de Java e pequenos exemplos personalizados de Qt devem poder ser executados após o procedimento acima (eu já tentei todas as etapas acima e outras encontradas na Web (estouro de pilha, ..), mas nenhuma estava funcionando para mim, foi o que acabei fazendo depois de algumas "tentativas e erros"
Por último, mas não menos importante, se alguém aqui sabe como executar programas compilados contra bibliotecas de 32 bits em um sistema de 64 bits, ESPECIFICANDO USAR UMA BIBLIOTECA DE 32 bits FORNECIDA POR TERCEIROS?
mais precisamente, para quem sabe do que estou falando, como devo executar os exemplos de Qt "EmoCube" e "BlueAvatar" no meu sistema de 64 bits?
-> pelo que tentei até agora, o máximo que consegui foi: "erro ao carregar as bibliotecas compartilhadas: libedk.so.1: classe ELF errada: ELFCLASS64"
Eu acho que um link simbólico para essa lib no diretório i386 não seria suficiente (embora eu ainda não tenha tentado), por isso, se alguém tiver uma resposta ... Estou ansioso para lê-la.
Cheers all +
Execute estes comandos em um terminal:
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
Isso me ajudou