Я делал это раньше пару раз, но почему-то застрял на этот раз. У меня есть исполняемый файл «myapp» и собственная разделяемая библиотека » mylib ". В моих списках команд у меня есть следующее:
ADD_LIBRARY(mylib SHARED ${SOURCES_LIB})
INSTALL(TARGETS mylib DESTINATION .)
ADD_EXECUTABLE(myapp ${SOURCES_APP})
TARGET_LINK_LIBRARIES(myapp ${QT_LIBRARIES} mylib)
INSTALL(TARGETS myapp DESTINATION .)
Все компилируется и связывается правильно, но когда я запускаю myapp, я получаю следующую ошибку:
error while loading shared libraries: libmylib.so: cannot open shared object file: No such file or directory
Библиотека и исполняемый файл присутствуют в каталоге установки. Когда я делаю моя библиотека статична, изменив первую строку приведенных выше списков команд на:
ADD_LIBRARY(mylib STATIC ${SOURCES_LIB})
, тогда все работает на 100%.
Кто-нибудь знает, что я делаю не так?