Компиляция из командной строки файла target-C с пользовательской платформой: сбой выполнения с «библиотекой dyld не загружен, причина: образ не найден» - PullRequest
0 голосов
/ 08 апреля 2019

По сути, меня бьют по лязгам, ссылкам и macOS вообще. Моя миссия: скомпилировать и выполнить какую-то задачу C из командной строки, которая использует код из пользовательской среды.

Команда, которую я сейчас использую:

clang -fobjc-arc -F. -framework Foundation -framework MyCustomFramework <some .m files> -o run-test.

Когда я делаю это, компиляция завершается успешно, но выполнение (./run-test) завершается с ошибкой:

dyld: Library not loaded: @rpath/MyCustomFramework.framework/MyCustomFramework
  Referenced from: /blah/Documents/./run-test
  Reason: image not found
Abort trap: 6

Каркас действительно в этом месте.

Раньше у меня не получалось компилировать, потому что у меня не было -framework MyCustomFramework в качестве параметров лязга - хотя интересно, что компиляция и выполнение успешно выполняются для других целей, использующих MyCustomFramework, когда все, что у меня есть, - -F., в этом случае ошибка I получил был:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_srfidSdkFactory", referenced from:
      objc-class-ref in RfidSdkApiAdaptor-28a0d6.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Как я уже говорил, это было исправлено с помощью команды -framework MyCustomFramework. Моя текущая проблема - проблема dyld: Library not loaded ... Reason: image not found. Я надеюсь, что это что-то простое, например, параметр командной строки или установка переменной среды для поиска библиотеки.

Связывание / Цель C / Clang умелые люди, помогите пожалуйста

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...