Попытка запустить программу под названием worldforge, но появляется ошибка
Я недавно скачал программу под названием Worldforge, это производитель игр с открытым исходным кодом. Я загрузил его исполняемый файл и дал ему разрешения на запуск, но когда я пошел, чтобы запустить его, он вернулся с этой ошибкой:
/tmp/.mount_dskVs4/usr/bin/ember.bin: error while loading shared libraries: librtmp.so.0: cannot open shared object file: No such file or directory
Я пытался найти ответ, но единственный, который я нашел, который не имел отношения к делу, не сработал, я был бы очень рад, если бы кто-нибудь смог помочь.
1 ответ
Это не тривиально, чтобы получить librtmp0
пакет в Xenial, поэтому моя первая идея заключается в использовании librtmp.so.1
от librtmp1
пакет, поскольку есть большая вероятность, что библиотека обратно совместима.
Для этого нам нужно создать символическую ссылку на него в месте, где исполняемый файл программы может его найти. Поскольку это своего рода хак, было бы предпочтительнее, если другие приложения не находят ту же ссылку автоматически. Полезно, это приложение добавляет ~/.ember/lib
в его путь поиска библиотеки по умолчанию.
Я предлагаю вам
заверить, что
librtmp1
пакет установлен,sudo apt install librtmp1
создать каталог
~/.ember/lib
,mkdir -p ~/.ember/lib
поставить символическую ссылку там.
ln -sT /usr/lib/$(uname -m)-linux-gnu/librtmp.so.1 ~/.ember/lib/librtmp.so.0
Если в приложении теперь происходит сбой с сообщением об ошибке "отсутствует символ" (или что-то в этом роде), пожалуйста, обновите свой вопрос сообщением об ошибке и сообщите мне комментарий, чтобы я мог его устранить.
Если есть еще общие библиотеки, вы можете искать их пакеты и
установите их, если они доступны в Xenial или
поиск более новой версии той же общей библиотеки (без номера версии в конце имени пакета) повторите описанный выше процесс для нее.