Essayer de lancer Game Dev Tycoon sur Ubuntu 64. Il demande l’objet ci-dessus.
J'ai couru sudo apt-get install libudev1:i386
et il est revenu déjà installé.
J'ai /lib/i386-linux-gnu/libudev.so.1
mais pas libudev.so.0
n'importe où.
Essayer de lancer Game Dev Tycoon sur Ubuntu 64. Il demande l’objet ci-dessus.
J'ai couru sudo apt-get install libudev1:i386
et il est revenu déjà installé.
J'ai /lib/i386-linux-gnu/libudev.so.1
mais pas libudev.so.0
n'importe où.
Réponses:
Pour Ubuntu 64 bits, il se trouve dans le paquetage libudev0 32 bits.
Vous pouvez l'installer avec la commande suivante:
sudo apt-get install libudev0:i386
Ce paquet a été retiré d'Ubuntu en 14.04. Vous devrez l'installer à partir d'une version plus ancienne.
Pour résoudre ce problème, j'ai lié libudev.so.1
à 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
La méthode la plus simple que j'ai trouvée consistait simplement à télécharger le fichier .deb ( lien direct vers les téléchargements 64 bits et 32 bits ) et à double-cliquer dessus pour l'installer ou à l'aide de dpkg pour l'installer:
dpkg -i libudev0_175-0ubuntu9_amd64.deb
Dans les versions précédentes d’ubuntu, ce paquet était disponible dans les dépôts officiels. Vous pouvez installer avec les éléments suivants:
sudo apt-get install libudev0:i386
J'ai eu le même problème pour un programme différent, mais la réponse acceptée par Sean ne m'a pas aidé du tout. Sur mon installation mise à niveau de la version 13.04 64 bits, libudev0 n'est disponible ni sous la forme 64 bits ni sous la forme i386. Et ia32-libs est déjà installé. Donc pas de dés.
Ce que je devais faire était une version légèrement modifiée de la solution plus technique de senshikaze. J'ai manuellement lié symboliquement libudev.so.0 à libudev.so.1 dans le répertoire lib x86_64, ainsi:
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
Cela a résolu le problème pour moi.
Cette erreur peut se produire lorsque vous essayez d'utiliser le fichier exécutable nw à partir de Node Webkit . Comme ça:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
Obtenez éditeur hexadécimal qui vous permet de changer la chaîne ASCII du binaire, par exemple. hexedit :
sudo apt-get install hexedit
.cd ~/Dokumenty/node-webkit-*
.sudo
:
sudo hexedit nw
.libudev.so.0
comme chaîne ASCII:
libudev.so.0
.0
dans la libudev.so.0
chaîne en 1
, alors ça devient libudev.so.1
::
0
dans la libudev.so.0
chaîne.Vous avez terminé. Cela corrige également le problème avec le binaire Atraci lorsque vous suivez les mêmes instructions, à l'exception de l'édition hexadécimale du fichier Atraci au lieu de nw.
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
, chmod a+x fixed_nw
et ensuite vous pouvez l'exécuter, pas besoin d'installer quoi que ce soit
La seule réponse qui fonctionne ici sur Ubuntu 14.04 est la réponse acceptée, et comme de nombreux commentaires soulignent que cela peut causer des problèmes avec le système à l'avenir (bien que je ne le sache pas moi-même), j'ai proposé un compromis. Ce script vous demandera (dans le terminal) votre mot de passe root. Il créera le lien symbolique et lancera l'application (dans mon cas, l'heure du pop-corn). Lorsque vous quittez l'application, elle utilisera la session sudo existante pour supprimer le lien symbolique:
#!/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
Je viens de trouver un moyen de faire ce travail, est assez bête.
Google Chrome est installé sur mon système et cet objet partagé est intégré dans Google Chrome. Il me suffisait donc de créer un lien symbolique vers la bibliothèque sur le répertoire d'installation de Chrome.
ln -sf /opt/google/chrome/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0
Cela fonctionne très bien pour moi.
C'était la solution la plus simple que j'ai trouvée
sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
comme l'a souligné Phil Strong
installer libudev.so.1
sudo apt-get install libudev1:i386
puis reliez-le en tant que libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
Je l'ai fait le 14.04, mais devrait être similaire. supprimez simplement le paquet et réinstallez-le. les bibliothèques correctes sont installées correctement.
apt-get purge google-chrome-stable
apt-get install google-chrome-stable
Je suis sûr que les autres réponses fonctionnent, mais je peux également modifier les objets de système de fichiers gérés par les packages de gestion de la configuration.
C’est ce que j’ai utilisé pour résoudre le même problème sous Ubuntu 15.04 32 bits.
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
UPDATE J'ai créé un script bash pour envelopper le programme que vous voulez exécuter. Vous pouvez l'ajouter à votre dossier bin local et simplement démarrer le programme sans copier / coller ni exécuter de scripts 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
ANCIENNE RÉPONSE Dans Ubuntu 14.04, le message d'erreur de l'éditeur de fléchettes m'échappait lorsque j'essayais d'utiliser Live Preview (Chromium). L'erreur a été résolue en installant libudev1 et en créant un lien symbolique .
sudo apt-get install libudev1
J'ai également utilisé le script mentionné ci-dessus par TenLeftFingers pour exécuter 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
Si l'éditeur de fléchettes ne s'exécute pas, assurez-vous que JAVA est installé et qu'il ne s'agit pas d'un problème d'autorisation.
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
et rendre l'IDE exécutable:
sudo chmod a+x ./DartEditor
Cela a fonctionné pour moi.
La même erreur se produisait sur mon système 32 bits après la mise à niveau de Xubuntu Precise vers Trusty. Cela a résolu le problème pour moi:
sudo dpkg-reconfigure google-chrome-stable
Je l'ai trouvé ici . Sans aucun paramètre, je ne sais pas trop comment cela a résolu le problème, mais c'est ce qui s'est passé. Ce que j’ai préféré, c’est que cela n’exigeait rien qui puisse potentiellement me causer des problèmes à l’avenir, ni que je recherche des colis.
Si quelqu'un tombe sur cette page lors de l'exploration du Web pour trouver des correctifs sur libudev.so.0 et l'édition de développement Emotiv Epoc SDK sur Ubuntu, j'espère que les éléments suivants vous aideront:
// ma configuration est 64bits Ubuntu 13.04
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, les exemples Java et quelques exemples Qt personnalisés devraient pouvoir être exécutés après avoir effectué la procédure ci-dessus (j'ai déjà essayé toutes les étapes ci-dessus + autres trouvées sur le Web (débordement de pile, ..), mais aucune ne fonctionnait pour moi, alors c’est ce que j’ai fini par faire après quelques essais et erreurs
Dernier point mais non le moindre, si quelqu'un ici sait comment exécuter des programmes compilés avec des bibliothèques 32 bits sur un système 64 bits, tout en spécifiant l'utilisation d'une bibliothèque 32 bits fournie de troisième partie?
plus précisément, pour ceux qui savent de quoi je parle, comment dois-je exécuter les exemples Qt "EmoCube" et "BlueAvatar" sur mon système 64 bits?
-> pour ce que j’ai essayé jusqu’à présent, le maximum que j’ai pu obtenir est: "erreur lors du chargement de bibliothèques partagées: libedk.so.1: mauvaise classe ELF: ELFCLASS64"
Je suppose qu'un lien symbolique vers cette lib dans le répertoire i386 ne le ferait pas (même si je ne l'ai pas encore essayé), donc si quelqu'un a une réponse ... Je suis impatient de la lire.
Salut à tous +
Exécutez ces commandes dans un terminal:
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
Cela m'a aidé