Если я запустил приложение приложения из ~/Desktop/, я получаю:
/home/me/Desktop/app: error while loading shared libraries: somelib.so.0: cannot open shared object file: No such file or directory
Итак, я создал этот скрипт под названием app :
DIR="$(dirname "$0")"
export LD_LIBRARY_PATH=$DIR
$DIR/app
И тогда приложение запускается.
Однако я решил, что не хочу иметь его на рабочем столе, но иметь под ~/dev/apps/. Поэтому я перемещаю все файлы (app, somelib.so.0, app.sh) и получаю эту ошибку при запуске скрипта:
/home/me/dev/apps/app: error while loading shared libraries: somelib.so.0: cannot open shared object file: No such file or directory
Если я переведу его на ~/foo/bar/, все равно не run.
Обратите внимание:
Все каталоги и файлы имеют одинаковые разрешения. Все файлы находятся в одном каталоге. Я вызываю скрипт из ~/Destop/app.sh или ~/dev/app/app.sh. Я запускаю его из /home/meЯвляется ли это нормальным поведением или что-то не так с моей настройкой или настройкой?
Я понял, что при копировании всех файлов в Nautilus динамическая библиотека копировалась как мягкая ссылка, а размер файла был намного меньше.
Удаление библиотеки и копирование ее снова из bash fixed проблема.
Я добавляю Nautilus в качестве тега к вопросу. Однако я больше не могу воспроизвести эту проблему, даже когда копирование снова начинается с Nautilus.
Я понял, что при копировании всех файлов в Nautilus динамическая библиотека копировалась как мягкая ссылка, а размер файла был намного меньше.
Удаление библиотеки и копирование ее снова из bash fixed проблема.
Я добавляю Nautilus в качестве тега к вопросу. Однако я больше не могу воспроизвести эту проблему, даже когда копирование снова начинается с Nautilus.
Я понял, что при копировании всех файлов в Nautilus динамическая библиотека копировалась как мягкая ссылка, а размер файла был намного меньше.
Удаление библиотеки и копирование ее снова из bash fixed проблема.
Я добавляю Nautilus в качестве тега к вопросу. Однако я больше не могу воспроизвести эту проблему, даже когда копирование снова начинается с Nautilus.
Вы можете добавить явный путь в LD_LIBRARY_PATH следующим образом:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/Desktop/app/lib
(используйте примерный путь к библиотеке)
Также вы можете добавить это в свой .bash_profile
Также вы можете создать softlink в /usr/lib в своей библиотеке
Вы можете добавить явный путь в LD_LIBRARY_PATH следующим образом:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/Desktop/app/lib
(используйте примерный путь к библиотеке)
Также вы можете добавить это в свой .bash_profile
Также вы можете создать softlink в /usr/lib в своей библиотеке
Вы можете добавить явный путь в LD_LIBRARY_PATH следующим образом:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/me/Desktop/app/lib
(используйте примерный путь к библиотеке)
Также вы можете добавить это в свой .bash_profile
Также вы можете создать softlink в /usr/lib в своей библиотеке