
Я только что купил Humble Double Fine Bundle и скачал файл .bin, а там написано, что он использует установщик mojo.
При попытке открыть установщик возникает следующая ошибка:
jeggy@jeggy-XPS:~/Niðurtøkur$ sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
./CostumeQuest-Linux-2013-05-07-setup.bin: error while loading shared libraries: libbz2.so.1: cannot open shared object file: No such file or directory
Я погуглил и нашел это:
И это похоже на мою проблему, но ссылка уже не работает :/
Я использую Ubuntu 13.04 64bit.
РЕДАКТИРОВАТЬ:
Там написано, что у меня установлен libbz2-1.0
jeggy@jeggy-XPS:~/Niðurtøkur$ sudo apt-get install libbz2-1.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
libbz2-1.0 is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
лдд:
jeggy@jeggy-XPS:~/Niðurtøkur$ ldd ./CostumeQuest-Linux-2013-05-07-setup.bin
linux-gate.so.1 => (0xf77a9000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7769000)
libbz2.so.1 => not found
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf7763000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7720000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf756d000)
/lib/ld-linux.so.2 (0xf77aa000)
jeggy@jeggy-XPS:~$ sudo find / -name libbz2.so.1
[sudo] password for jeggy:
/home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libbz2.so.1
/lib/x86_64-linux-gnu/libbz2.so.1
Прошло очень много времени, прежде чем я получил ответ от этой команды.
решение1
Простой способ исправить ошибку
sudo find / -name libbz2.so.1
Выходной сигнал:
/var/cache/lxc/centos/x86_64/6/rootfs/lib64/libbz2.so.1
/var/cache/lxc/raring/rootfs-amd64/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/centos/rootfs/lib64/libbz2.so.1
/var/lib/lxc/container/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/juju/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/var/lib/lxc/client/rootfs/lib/x86_64-linux-gnu/libbz2.so.1
/lib/x86_64-linux-gnu/libbz2.so.1
/lib/i386-linux-gnu/libbz2.so.1
Тогда вам просто нужно загрузить эту библиотеку libbz2.so.1 перед выполнением
Для 32-битного приложения
LD_PRELOAD=/lib/i386-linux-gnu/libbz2.so.1 ./CostumeQuest-Linux-2013-05-07-setup.bin
Если это работает, то просто проверьте этот ответ.Skype аварийно завершает работу из-за ошибки сегментации
ИЛИ
sudo ln -s /lib/i386-linux-gnu/libbz2.so.1 /usr/lib32/
sudo ldconfig -v
Затем запустите установку.
Обновлять
Создайте файл
sudo gedit /etc/ld.so.conf.d/hib.conf
Скопируйте и вставьте в него следующую строку
/home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/
/lib/x86_64-linux-gnu/
/lib/i386-linux-gnu/
Сохраните и выйдите, а затем выполните следующую команду
sudo ldconfig -v
Наконец, запустите установку.
sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
Решено с помощью Google + Screen Sharing
sudo cp /home/jeggy/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libbz2.so.1.0.4 /usr/lib/libbz2.so.1
sudo ldconfig -v
Наконец, запустите установку.
sudo ./CostumeQuest-Linux-2013-05-07-setup.bin
решение2
Обязательно посмотрите в /usr/lib*32* папку для создания символической ссылки (и библиотеки в этой папке, а не из папки lib, так как она 64-битная).
Установщик, похоже, 32-битный (очевидно, если посмотреть на вывод ldd). После создания дополнительной символической ссылки на libbz2.so.1 в папке lib32 он установился нормально. (хотя он и прислал несколько дополнительных сообщений об исключениях)
решение3
Установить libbz2 можно так
sudo apt-get install libbz2-1.0
решение4
Откройте терминал, используйте cd
для перехода в каталог загрузки. Введите:
chmod u+x *filename*
Нажмите Enter и введите:
./*filename*
Дополнительные сведения: это работает на Ubuntu 13.04 x64, и я просто ввел имена файлов БЕЗ РАСШИРЕНИЙ (т. е. без .bin и т. д.)
Это должно открыть приглашение к установке в терминале.