Уважаемые форумчане!
Помогите исправить ошибку: я подключаю свою написанную динамическую библиотеку в консольное приложение, и получаю такую ошибку при запуске бинарника "test":
dyld: Library not loaded: /usr/local/lib/LibName.dylib
Referenced from: /Users/Documents/MyProj/Build/Release/test
Reason: image not found
Trace/BPT trap: 5
Как это исправить? Если класть файл LibName.dylib по адресу /usr/local/lib/, ошибка не исчезает. Ну хоть кто-нибудь ответьте на этот простой вопрос!!!
Решение найдено!!! Во-первых, в свойствах проекта нужно указывать, по какому адресу расположена библиотека:
Build Settings -> Linking -> Dynamic Library Install Name -> $(EXECUTABLE_PATH)
Build Settings -> Linking -> Dynamic Library Install Name Base -> $(EXECUTABLE_PATH)
Во-вторых, при загрузке библиотеки с помощью функции dlopen(), необходимо указывать абсолютный путь к ней с именем самой библиотеки. И третье, и самое главное, в чём была ошибка - НЕ ДОБАВЛЯЙТЕ библиотеку в Link Binary With Libraries!!! Этот раздел используется для СТАТИЧЕСКИХ библиотек.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Использую строку u32stringКак выполнить преобразование uppercase, то есть маленькие символы преобразовать в большие?
Что делать, если QT Creator под windows не находит файл проекта (pro) и в лог постройки пишет следующее: