Спроба запустити Game Dev Tycoon на Ubuntu 64. Він запитує вищезазначений об'єкт.
Я побіг, sudo apt-get install libudev1:i386
і він повернувся вже встановлений.
У мене немає, /lib/i386-linux-gnu/libudev.so.1
але libudev.so.0
ніде.
Спроба запустити Game Dev Tycoon на Ubuntu 64. Він запитує вищезазначений об'єкт.
Я побіг, sudo apt-get install libudev1:i386
і він повернувся вже встановлений.
У мене немає, /lib/i386-linux-gnu/libudev.so.1
але libudev.so.0
ніде.
Відповіді:
Для 64-розрядних Ubuntu він знаходиться в 32-бітному пакеті libudev0.
Ви можете встановити це за допомогою наступної команди:
sudo apt-get install libudev0:i386
Цей пакет було видалено з Ubuntu 14.04. Вам потрібно буде встановити його зі старої версії.
Щоб виправити, я пов’язав 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
Найпростіший метод, який я знайшов, - це просто завантажити .deb ( пряме посилання на 64-розрядне завантаження та 32-розрядне завантаження ) та двічі клацнути його, щоб встановити його або використовувати dpkg для його встановлення:
dpkg -i libudev0_175-0ubuntu9_amd64.deb
У попередній версії ubuntu цей пакет був доступний в офіційних сховищах. Ви можете встановити наступне:
sudo apt-get install libudev0:i386
У мене була така ж проблема для іншої програми, але прийнята відповідь Шона мені зовсім не допомогла. У моїй оновленій 64-розрядної версії 13.04 libudev0 недоступна ні в 64-бітній, ні в i386. І ia32-libs вже встановлено. Так що без кісток.
Що мені довелося зробити, це злегка модифікована версія більш технічного рішення сенсікадзе. Я вручну символізував libudev.so.0 на libudev.so.1 в каталозі lib x86_64, таким чином:
cd /lib/x86_64-linux-gnu/
sudo ln -sf libudev.so.1 libudev.so.0
Це зафіксувало це для мене.
Ця помилка може статися при спробі використання nw виконуваного файлу з Node Webkit . Подобається це:
./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory
Отримайте шестигранний редактор, який дозволяє змінювати ASCII рядок двійкових, наприклад. hexedit :
sudo apt-get install hexedit
.cd ~/Dokumenty/node-webkit-*
.sudo
:
sudo hexedit nw
.libudev.so.0
як рядок ASCII:
libudev.so.0
.0
в libudev.so.0
рядку , щоб 1
, таким чином це стає: libudev.so.1
:
0
у libudev.so.0
рядку.Ви закінчили. Це також виправляє проблему з бінарними Atraci при дотриманні тих же інструкцій, за винятком шестнадцяткового редагування файлу Atraci замість nw.
cat nw | sed s/libudev.so.0/libudev.so.1/ > fixed_nw
, chmod a+x fixed_nw
і тоді ви можете запустити його, не потрібно нічого встановлювати
Єдина відповідь, яка працює на Ubuntu 14.04, - це прийнята відповідь, і оскільки багато коментарів зазначають, що це може спричинити проблеми із системою в дорозі (хоча я сам про це не знаю), я прийшов до компромісу. Цей скрипт підкаже (у терміналі) для вашого кореневого пароля. Це створить символічне посилання та запустить додаток (у моєму випадку - попкорн). Коли ви закриєте програму, вона використає існуючий сеанс судо для видалення символічного посилання:
#!/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
Я щойно знайшов спосіб зробити цю роботу, хоча досить дурний.
У мене в моїй системі встановлений Google Chrome, і в Chrome вбудований цей спільний об’єкт. Отже, мені просто довелося зробити символічне посилання на бібліотеку в каталогу встановлення Chrome.
ln -sf /opt/google/chrome/libudev.so.0 /lib/x86_64-linux-gnu/libudev.so.0
Для мене це працює чудово.
Це було найпростіше рішення, яке я знайшов
sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
як зазначив Філ Стронг
встановити libudev.so.1
sudo apt-get install libudev1:i386
потім зв’яжіть це як libudev.so.0
sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0
Я робив це 14.04, але має бути схожим. просто видаліть пакет і перевстановіть. правильні бібліотеки встановлені належним чином.
apt-get purge google-chrome-stable
apt-get install google-chrome-stable
Я впевнений, що інші відповіді спрацьовують, але у мене є основна яловичина в зміні об'єктів файлової системи, якими керуються пакети управління конфігурацією.
Це те, що я використовував для вирішення тієї ж проблеми в 32-бітному Ubuntu 15.04.
cd i386-linux-gnu
sudo ln -sf libudev.so.1 libudev.so.0
ОНОВЛЕННЯ Я створив сценарій bash, щоб обернути програму, яку потрібно виконати. Ви можете додати його у свою локальну папку біна та просто запустити програму без копіювання та вставки та запуску скриптів оболонки.
#!/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
СТАРИЙ ВІДПОВІДЬ У Ubuntu 14.04 я отримував повідомлення про помилку від редактора Dart при спробі використання Live Preview (Chromium). Помилку було вирішено шляхом встановлення libudev1 та створення символічного зв’язку .
sudo apt-get install libudev1
Я також використав сценарій, згаданий вище TenLeftFingers, щоб виконати 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
Якщо редактор Dart не виконується, переконайтеся, що встановлено JAVA, і це не проблема з дозволом.
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
і зробіть IDE виконуваним:
sudo chmod a+x ./DartEditor
Це працювало для мене.
Я отримав таку ж помилку в своїй 32-бітній системі після оновлення від Xubuntu Precise до Trusty. Це зафіксувало це для мене:
sudo dpkg-reconfigure google-chrome-stable
Я знайшов це тут . Не маючи абсолютно жодних параметрів, я не зовсім впевнений, як це виправлено, але це було. Що мені найбільше сподобалось, це те, що це не вимагало робити нічого, що потенційно могло б створити проблеми у мене в майбутньому, і не вимагало від мене пошуку будь-яких пакунків.
Якщо хтось натрапить на цю сторінку під час копання в Інтернеті для виправлень на libudev.so.0 та Emotiv Epoc SDK Dev Edition на Ubuntu, я сподіваюся, що наступне допоможе:
// мій конфігурація 64-бітний 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, приклади Java та мало налаштовані приклади Qt повинні бути спроможні виконуватись після виконання вищесказаного (я вже спробував усі кроки вище + інші, знайдені в Інтернеті (переповнення стека, ..), але жоден не працював для мене, тож ось що я закінчила робити після деяких "спроб і помилок"
І останнє, але не менш важливе значення: Якщо хтось тут знає, як запускати програми, складені проти 32-бітових ліб на 64-бітовій системі, ПЕРЕКЛЮЧАЙ ВИКОРИСТОВУВАТИ ВИКОРИСТАНУВАННЯ БІБЛІОТЕКИ 3-й ПАРТІЇ 32-БІТИ?
точніше, для тих, хто знає, про що я говорю, як я повинен запускати приклади Qt "EmoCube" та "BlueAvatar" на моїй 64-бітовій системі?
-> для того, що я намагався до цього часу, найбільше, що я міг отримати, це: "помилка під час завантаження спільних бібліотек: libedk.so.1: неправильний клас ELF: ELFCLASS64"
Я думаю, що посилання на цю лібу в каталозі i386 не зробить її (хоча я ще не пробував її), тому якщо хтось має відповідь ... Я з нетерпінням чекаю її.
Привіт всі +
Запустіть ці команди в терміналі:
cd /lib/x86_64-linux-gnu/
sudo cp libudev.so.0.13.0 libudev.so.1
Це мені допомогло