Библиотека Hiredis не загружена / изображение не найдено
Я работаю над проектом C++, используя cmake, который использует hiredis. CMake и процесс компиляции не дают никаких ошибок. Однако, когда я пытаюсь выполнить свой проект (из терминала или из IDE, которую я использую [CLion]), я получаю следующую ошибку:
dyld: библиотека не загружена: libhiredis.0.13.dylib
Ссылка на: /Users/connorriley/CLionProjects/DispatchingOptimization/bin/dispatch Причина: изображение не найдено
Я не уверен, почему мой проект ищет libhiredis.0.13.dylib
потому что единственный файл библиотеки hiredis у меня есть libhiredis.dylib.
Моя файловая структура проекта выглядит следующим образом:
.
+-- bin
| +-- dispatch (my executable)
+-- lib
| +-- hiredis
| | +-- libhiredis.dylib
| +-- otherlibs
+-- src
| +-- source code/subfolders with source code
Дополнительная информация:
- Компилятор: Clang
- os: macOS 10.12.3
- cmake версия 3.7.2
2 ответа
Я исправил свою проблему, я пошел в каталог hiredis и набрал:
make
но не последовал за этим
make install
Поэтому файл, который искал мой код, не был в моем /usr/local/lib
Выглядит как твой DYLD_LIBRARY_PATH
не установлен правильно. Вы можете получить больше информации, установив DYLD_PRINT_LIBRARIES
и / или некоторые другие переменные среды, упомянутые здесь
Но, вероятно, вам просто нужно добавить каталог hiredis в CMAKE_LIBRARY_PATH
как это:set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} ${PROJECT_SOURCE_DIR}/lib/hiredis)