LINUX.ORG.RU

Cannot open shared object file, подключение динамической библиотеки FreeImage

 ,


0

1

Качнул FreeImage - библиотеку для работы с изображениями, сделал make и make install. В Qt Creator'е создал пустой проект на C++ с использованием qmake. Для того, чтобы избавиться от «undefined reference» добавил в pro-файл

LIBS += -lfreeimage
Включил заголовок и вставил простую функцию
#include <iostream>
#include <FreeImage.h>

using namespace std;

int main()
{

    cout << FreeImage_GetVersion();

    return 0;

}
Давлю CTRL+R, терминал выводит
error while loading shared libraries: libfreeimage.so.3: cannot open shared object file: No such file or directory

Выхлоп make

cp *.a Dist
cp *.so Dist
cp Source/FreeImage.h Dist
make[1]: Выход из каталога `/home/user/FreeImage'

Выхлоп make install

make -f Makefile.gnu install
make[1]: Вход в каталог `/home/user/FreeImage'
install -d //usr/include //usr/lib
install -m 644 -o root -g root Source/FreeImage.h //usr/include
install -m 644 -o root -g root libfreeimage.a //usr/lib
install -m 755 -o root -g root libfreeimage-3.15.4.so //usr/lib
ln -sf libfreeimage-3.15.4.so //usr/lib/libfreeimage.so.3
ln -sf libfreeimage.so.3 //usr/lib/libfreeimage.so
make[1]: Выход из каталога `/home/user/FreeImage'

Mageia 2 X86_64

Как сделать так, чтобы динамическая библиотека виделась программой?


Проверьте, что ссылка в /usr/lib не битая. Из наутилуса посмотрите, например.

quiet_readonly ★★★★
()

man ldconfig ld.so

anonymous
()
Ответ на: комментарий от nanoolinux

Большое спасибо, «достаточно одной команды!» )

puding
() автор топика
Ответ на: комментарий от buddhist

Ну так всё правильно: c++ похапе ксюша собчак писечки скачать.

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