#ios #delphi #firemonkey
#iOS #delphi #firemonkey
Вопрос:
Я пытаюсь скомпилировать в Delphi Rio проект, который отлично работал под Delphi tokyo. Я не могу, потому что у меня всегда есть эта ошибка :
ld: framework not found Bolts for architecture armv7
Но в глобальном пути к библиотеке delphi я правильно установил:
C:libiosfacebookBolts.framework
это путь, по которому находится фреймворк Bolts:
C:libiosfacebookBolts.frameworkHeaders...
C:libiosfacebookBolts.frameworkModules...
C:libiosfacebookBolts.frameworkInfo.plist
C:libiosfacebookBolts.frameworkBolts
Что я пропустил?
Примечание: если я перемещаю C:libiosfacebookBolts.framework
каталог внутри глобального каталога PlateformSDKs, тогда он работает.
Комментарии:
1. Это ошибка quality.embarcadero.com/browse/RSP-22216
2. Спасибо @DalijaPrasnikar! Грустно, потому что вы создали этот отчет об ошибке 14 / Oct / 18 перед обновлением 1, но он все еще не решен: ( вы нашли обходной путь?
3. Обходной путь — добавьте фреймворки из пути к фреймворкам в путь поиска в настройках вашего проекта. Я не пробовал с глобальными настройками.
4. H @DalijaPrasnikar не уверен, что я понимаю, что такое путь к фреймворкам?
5. @DalijaPrasnikar Я думаю, я понимаю, что под путем к фреймворку вы подразумеваете инструмент> развертывание> SDK manager. Я никогда не добавляю сюда какие-либо внешние фреймворки, я всегда добавляю путь к внешней фреймворке в путь поиска опции проекта: (и, как вы видите, это не работает
Ответ №1:
я нашел выход:
Если у меня есть
C:DevAlcinoelibiosfacebookBolts.framework
C:DevAlcinoelibiosfacebookFBSDKCoreKit.framework
C:DevAlcinoelibiosfacebookFBSDKLoginKit.framework
C:DevAlcinoelibiosfacebookFBSDKShareKit.framework
Я должен добавить в путь поиска все эти каталоги, А в параметре project framework path — КОРНЕВОЙ путь
C:DevAlcinoelibiosfacebook
тогда это работа! У меня все еще есть предупреждение
ld: предупреждение: автоматическое связывание прилагается ‘C:DevAlcinoelibiosfacebook/Bolts.framework/Bolts ‘, опция компоновщика фреймворка в C:DevAlcinoelibiosfacebook/Bolts.framework/Bolts это не dylib
но это работа
Ответ №2:
Я включаю Facebook SDK таким образом:
1) Скопируйте все фреймворки FBSDK в активный SDK. Для iOS 12.1 это: D:DocumentsEmbarcaderoStudioSDKsiPhoneOS12.1.sdkSystemLibraryFrameworks
2) Скажите компоновщику Delphi включить SDK.
В разделе Project Options > Building > Delphi Compiler > Linking > Options passed to the LD linker
добавьте эту строку:
-ObjC -lz -framework FBSDKCoreKit -weak_framework Bolts