Библиотека не загружена: ../../Bin/Release/libXnVNite_1_4_0.dylib - PullRequest
0 голосов
/ 03 ноября 2011

Когда я делаю проект с openni.И есть проблема, когда я делаю свой make-файл.

Starting /Users/olivierjanssens/Documents/ICT/Master/Thesis/Code/mysuperdemo/qtcreator-  build/mysuperdemo...
dyld: Library not loaded: ../../Bin/Release/libXnVNite_1_4_0.dylib
Referenced from: /Users/olivierjanssens/Documents/ICT/Master/Thesis/Code/mysuperdemo/qtcreator-build/mysuperdemo
Reason: image not found
The program has unexpectedly finished.

Мой файл cmake

 cmake_minimum_required(VERSION 2.6)

 PROJECT(mysuperdemo)

 SET(NESTK_USE_OPENNI 1)
 ADD_SUBDIRECTORY(nestk)
 ## nestk/UseNestk.cmake.in defines variable to use nestk.
 ## It itself includes nestk/deps/cmake/UseEmbeddedNestkDeps.cmake that
 ## contains most of the cmake find packages commands.
 INCLUDE("${nestk_BINARY_DIR}/UseEmbeddedNestk.cmake")

ADD_EXECUTABLE(mysuperdemo mysuperdemo.cpp)
TARGET_LINK_LIBRARIES(mysuperdemo nestk)

, который генерирует мой make-файл, который я затем создаю.

Файл, упомянутый в ошибке, отсутствует в моей системе (../../Bin/Release/libXnVNite_1_4_0.dylib).Хотя файл libXnVNite.dylib есть, но его нет в папке ../../Bin/Release/, чего нет.Я работаю на OSX 10,7

Есть идеи, как я могу это исправить?

Ответы [ 2 ]

0 голосов
/ 17 марта 2013

Более элегантным решением было бы создание символических ссылок в этой относительной папке.../../Bin/Release/libXnVNite_1_4_0.dylib -> /usr/lib/libXnVNite.dylib

и так далее для всех проблемных библиотек.

Это сработало однажды для меня,но теперь это просто работает ...

Еще более элегантным решением было бы использование install_name_tool, чтобы изменить эти относительные пути на реальные.

0 голосов
/ 11 ноября 2011

Чтобы решить эту проблему, я переименовал существующий libXnVNite.dylib в libXnVNite_1_4_0.dylib, создал папку / bin / release относительно моего приложения и поместил в нее файл.Это работает, но я думаю, что это далеко от хорошего решения.

...