LINUX.ORG.RU

code::blocks линкует, но не запускается


0

0

Мозг кипит, ничо не понимаю уже. В воркспейсе есть два проекта - один генерит либу libxxx.so, другой проект генерит собственно исполняемый файл xxx, который линкуется с вышеупомянутой libxxx.so. xxx и libxxx.so лежат в разных папках. xxx прекрасно линкуется с libxxx.so, но... не запускается. Пишет «No such file or directory». Working dir проставлен в папку с libxxx.so.

ОК, я решил потестить это дело напрямую. Скинул «эксешник» в папку с либой и запустил вручную. Далее - взаимоисключающие параграфы:

ubuntulover@ubuntulover:~/Проекты/aaa/bin/linux/Debug$ ./xxx

./xxx: error while loading shared libraries: libxxx.so: cannot open shared object file: No such file or directory

ubuntulover@ubuntulover:~/Проекты/aaa/bin/linux/Debug$ ls

xxx libxxx.so libyyy.so libzzz.so

Я глупый любитель убунты, что с меня возмёшь. Скажите, что я делаю не так? Версия проекта под винду с такими же настройками работает прекрасно. Система - убунту под вбоксом, проект на расшаренной папке, оригинал в винде (дело в этом?) До этого всё работало нормально (сёдня сделал небольшой рефакторинг). Если это важно, то libxxx.so ссылается на ещё пару либ, которые лежат в той же папке...

да, а ещё у винды %PATH% по умолчанию текущую директорию включает.

а вообще читай man ld, обрати внимание на назначение переменной LD_LIBRARY_PATH

gorilych ★★
()
Ответ на: комментарий от gorilych

ага, понял уже. буду смотреть как в кодеблоксе настроить.

ubuntulover
() автор топика

какбэ странно: дебуггер изнутри кодеблокса работает нормалльно, а вот простой запуск из-под кодеблокса уже не работает, ничо не находит.

ubuntulover
() автор топика

короче, мля, лазил по их убогому форуму час, судя по всему эту LD_LIBRARY_PATH нормально нельзя проставить (а дебуггеру проставляет, ололо). буду менять иде

ubuntulover
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.