Tentativo di eseguire Game Dev Tycoon su Ubuntu 64. Richiede l'oggetto sopra.
Ho corso sudo apt-get install libudev1:i386
ed è tornato già installato.
Non ho /lib/i386-linux-gnu/libudev.so.1
ma da nessuna libudev.so.0
parte.
Tentativo di eseguire Game Dev Tycoon su Ubuntu 64. Richiede l'oggetto sopra.
Ho corso sudo apt-get install libudev1:i386
ed è tornato già installato.
Non ho /lib/i386-linux-gnu/libudev.so.1
ma da nessuna libudev.so.0
parte.
Risposte:
Per Ubuntu a 64 bit, è nel pacchetto libudev0 a 32 bit.
Puoi installarlo con il seguente comando:
sudo apt-get install libudev0:i386
Questo pacchetto è stato rimosso da Ubuntu in 14.04. Dovrai installarlo da una versione precedente.
Per risolvere, ho collegato 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
Il metodo più semplice che ho trovato è stato semplicemente scaricare il .deb ( collegamento diretto al download a 64 bit e al download a 32 bit ) e fare doppio clic per installarlo o utilizzare dpkg per installarlo:
dpkg -i libudev0_175-0ubuntu9_amd64.deb
Nella versione precedente di Ubuntu questo pacchetto era disponibile nei repository ufficiali. È possibile installare con quanto segue:
sudo apt-get install libudev0:i386
Ho avuto lo stesso problema per un programma diverso, ma la risposta accettata da Sean non mi ha aiutato affatto. Nella mia installazione aggiornata di 64.04 a 64 bit, libudev0 non è disponibile né in formato 64 bit né in i386. E ia32-libs è già installato. Quindi niente dadi.
Quello che dovevo fare era una versione leggermente modificata della soluzione più tecnica di senshikaze. Ho collegato manualmente libudev.so.0 a libudev.so.1 nella directory lib x86_64, quindi:
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
Questo mi ha risolto.
Questo errore potrebbe verificarsi quando si tenta di utilizzare eseguibile nw da Node Webkit . Come questo:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
Ottieni un editor esadecimale che ti consente di cambiare la stringa ASCII di binario, ad es. hexedit :
sudo apt-get install hexedit
.cd ~/Dokumenty/node-webkit-*
.sudo
:
sudo hexedit nw
.libudev.so.0
come stringa ASCII:
libudev.so.0
.0
in libudev.so.0
stringa in 1
, quindi diventa libudev.so.1
::
0
in libudev.so.0
stringa.Hai finito. Ciò risolve anche il problema con il binario Atraci quando si seguono le stesse istruzioni tranne la modifica esadecimale del file Atraci invece di nw.
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
, chmod a+x fixed_nw
E quindi è possibile eseguirlo, non è necessario installare nulla
L'unica risposta che funziona su Ubuntu 14.04 è la risposta accettata, e poiché molti commenti sottolineano che ciò può causare problemi con il sistema lungo la strada (anche se non lo so io stesso) ho trovato un compromesso. Questo script richiederà (nel terminale) la password di root. Creerà il collegamento simbolico e avvierà l'applicazione (nel mio caso, tempo di popcorn). Quando si chiude l'applicazione, utilizzerà la sessione sudo esistente per rimuovere il collegamento simbolico:
#!/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
Ho appena trovato un modo per farlo funzionare, è piuttosto sciocco però.
Ho Google Chrome installato sul mio sistema e Chrome ha questo oggetto condiviso incorporato. Quindi, dovevo solo creare un collegamento simbolico alla libreria nella directory di installazione di Chrome.
ln -sf /opt/google/chrome/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0
Funziona abbastanza bene per me.
Questa è stata la soluzione più semplice che ho trovato
sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
come ha sottolineato Phil Strong
installare libudev.so.1
sudo apt-get install libudev1:i386
quindi collegalo come libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
l'ho fatto il 14.04, ma dovrebbe essere simile. basta eliminare il pacchetto e reinstallarlo. le librerie corrette sono installate correttamente.
apt-get purge google-chrome-stable
apt-get install google-chrome-stable
sono sicuro che le altre risposte funzionino, ma ho una buona base nella modifica degli oggetti del file system gestiti dai pacchetti di gestione della configurazione.
Questo è quello che ho usato per risolvere lo stesso problema su Ubuntu 15.04 a 32 bit.
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
AGGIORNAMENTO Ho creato uno script bash per concludere il programma che si desidera eseguire. Puoi aggiungerlo alla tua cartella bin locale e avviare il programma senza copiare e incollare o eseguire script di 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
RISPOSTA VECCHIA In Ubuntu 14.04 stavo ricevendo il messaggio di errore dal Dart Editor durante il tentativo di utilizzare l'anteprima dal vivo (Chromium). L'errore è stato risolto installando libudev1 e creando un collegamento simbolico .
sudo apt-get install libudev1
Ho anche usato lo script sopra menzionato da TenLeftFingers per eseguire 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 il Dart Editor non viene eseguito, assicurarsi che JAVA sia installato e che non sia un problema di autorizzazione.
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 rendere eseguibile l'IDE:
sudo chmod a+x ./DartEditor
Questo ha funzionato per me.
Stavo ottenendo lo stesso errore sul mio sistema a 32 bit dopo l'aggiornamento da Xubuntu Precise a Trusty. Questo mi ha risolto:
sudo dpkg-reconfigure google-chrome-stable
L'ho trovato qui . Senza parametri, non sono sicuro di come sia stato risolto, ma è stato così. La cosa che mi è piaciuta di più è che non richiedeva di fare nulla che potesse potenzialmente causare problemi in futuro e che non richiedeva che cercassi dei pacchetti.
Se qualcuno dovesse imbattersi in questa pagina mentre cercava il Web per le correzioni su libudev.so.0 e l'Emotiv Epoc SDK Dev Edition su Ubuntu, spero che ciò che segue possa aiutare:
// la mia configurazione è Ubuntu 13.04 a 64 bit
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
EmotivControlPanel, EmoKey, EmoComposer, gli esempi Java e piccoli esempi Qt personalizzati dovrebbero essere in grado di funzionare dopo aver fatto quanto sopra (ho già provato tutti i passaggi sopra + altri trovati sul web (stack overflow, ..), ma nessuno funzionava per me, quindi è quello che ho finito dopo alcuni "tentativi ed errori"
Ultimo ma non meno importante, se qualcuno qui sa come eseguire programmi compilati su librerie a 32 bit su un sistema a 64 bit DURANTE LA SPECIFICA DI UTILIZZARE UNA BIBLIOTECA DA 32 BIT DI TERZE PARTI FORNITA?
più precisamente, per chi sa di cosa sto parlando, come dovrei eseguire gli esempi Qt "EmoCube" e "BlueAvatar" sul mio sistema a 64 bit?
-> per quello che ho provato finora, il massimo che ho potuto ottenere è stato: "errore durante il caricamento delle librerie condivise: libedk.so.1: classe ELF errata: ELFCLASS64"
Immagino che un link simbolico a quella lib nella directory i386 non lo farebbe (anche se non l'ho ancora provato), quindi se qualcuno ha una risposta ... Non vedo l'ora di leggerlo.
Saluti a tutti +
Esegui questi comandi in un terminale:
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
Questo mi ha aiutato