2010-06-04 4 views
5

Hoookay,Dyld: Библиотека не загружен Ошибка Mac OS

Так что я знаю, что я собираюсь получить дюжину «загрузить Lib фиктивные» ответы на это, но здесь идет ...

мусор. framework экспортирует некоторые объекты другого проекта (junk.app), поэтому я могу использовать его на узле remote.app в кластере. Я могу скомпилировать junk.framework (который я больше ничего не понимаю с динамической загрузкой) и компилировать и связывать remote.app с junk.framework.

Однако, когда я бегу remote.app я получаю этот прекрасный драгоценный камень ошибка:

dyld: Library not loaded: @executable_path/../Frameworks/libtiff.dylib 
    Referenced from: /Users/slate/Documents/junk/build/Development/junk.framework/Versions/A/junk 
    Reason: image not found 

Я думаю, что происходит в том, что junk.framework загружается libtiff.dylib из определенного места и его не может найти его. junk.framework - это еще один проект, над которым я работаю, что мне просто нужно построить (наконец).

Когда я get info на libtiff.dylib в моем барахла цель это дает мне /Users/slate/Documents/osirix/osirix/Binaries/LibTiff/libtiff.dylib как путь ... и у меня absolute path выбран. Так почему же он не ищет его?

Ух ... почему он смотрит на @executable_path /../ ???? Где на земле такая настройка, чтобы я мог ее изменить?

Редактировать ---

otool -L дает мне это:

/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 677.26.0) 
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 949.54.0) 
/System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate (compatibility version 1.0.0, current version 4.0.0) 
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 12.0.0) 
/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) 
@executable_path/../Frameworks/libtiff.dylib (compatibility version 11.0.0, current version 11.4.0) 
/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.3) 
/System/Library/Frameworks/QTKit.framework/Versions/A/QTKit (compatibility version 1.0.0, current version 1.0.0) 
/System/Library/Frameworks/QuickTime.framework/Versions/A/QuickTime (compatibility version 1.0.0, current version 1327.73.0) 
/usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0) 
/usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0) 
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4) 
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 227.0.0) 
/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 32.0.0) 
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 476.19.0) 
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices (compatibility version 1.0.0, current version 34.0.0) 
/System/Library/Frameworks/vecLib.framework/Versions/A/vecLib (compatibility version 1.0.0, current version 242.0.0) 

ответ

9

Установка @executable_path была указана при libtiff.dylib был построен. (Если вы создаете свой собственный dylib или фреймворк, это установочный файл установки (INSTALL_PATH).) Его можно изменить с помощью команды install_name_tool.

+0

AH, поэтому я не смог его найти. Благодарю. –

 Смежные вопросы

  • Нет связанных вопросов^_^