Я пытаюсь добавить liboauth.dylib в мой проект xcode (c ++).Я настроил и сделал библиотеку, которая сейчас находится в моем /usr/local/lib
, который теперь имеет:
liboauth.0.dylib
liboauth.dylib <- a link to liboauth.0.dylib
liboauth.li
liboauth.a
с заголовком в usr/local/include
.Кажется, хорошо.
Я включил это в свой xcode, добавив путь /usr/local/lib/liboauth.dylib
в раздел Other Linker Flags
и usr/local/include/
в Header Search Paths
.
Я также включилто же самое в Library Search Paths
.
Это прекрасно работает на моей системе.Однако, если я переношу полученный .app на другой (osx) компьютер, он выдаст ошибку /usr/local/liboauth.0.dylib
(я получаю это, открыв .app и запустив исполняемый файл unix).
Если компоновщик не должен иметьвключен либоавт dylib при сборке?И тогда это не должно быть проблемой при переходе на другой компьютер?
Если ответ «нет», то как бы я включил liboauth.dylib в .app, чтобы он мог работать на любомкомпьютер (работает под управлением osx)?
Вот конкретная ошибка:
Library not loaded: /usr/local/lib/liboauth.0.dylib
Referenced from: /Users/scratch/gameTest.app/Contents/MacOS/gameTest
Reason: image not found
Редактировать: Я обнаружил проблему!Используя команду otool -l в liboauth.0.dylib, я нашел это:
Load command 3
cmd LC_ID_DYLIB
cmdsize 56
name /usr/local/lib/liboauth.0.dylib (offset 24)
time stamp 1 Thu Jan 1 12:00:01 1970
current version 9.1.0
compatibility version 9.0.0
Может кто-нибудь помочь мне разобраться, как это изменить?Я думаю, что это как-то связано с install_name_tool, но я не знаю, как это сделать правильно.