Несоответствие с динамическими каталогами библиотек в MAC

Я пытаюсь включить динамическую библиотеку в свой проект и настраиваю компиляцию, используя следующий скрипт CMake:

find_package( DLIB 18.18.0 REQUIRED )
include_directories( ${DLIB_INCLUDE_DIRS} )
add_executable( executable executable.cxx )
target_link_libraries( executable ${dlib_LIBRARIES} )

Если я печатаю каталоги переменной $ {dlib_LIBRARIES}, я получаю:

/Users/../INSTALL/lib/libdlib.dylib

Что правильно и компилируется.
Проблема возникает при выполнении исполняемого файла и выдает следующую ошибку во время выполнения:

dyld: Library not loaded: libdlib.18.18.0.dylib
Referenced from: /Users/.../bin/executable
Reason: image not found
Trace/BPT trap: 5

И это выглядит логично, потому что если я запускаю исполняемый файл otool -L, я получаю относительный путь вместо абсолютного:

$otool -L executable
libdlib.18.18.0.dylib (compatibility version 0.0.0, current version 18.18.0)

Почему путь, показанный otool, не совпадает с путем, добавленным с target_link_libraries, и как я могу решить эту проблему с помощью cmake?

3

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]