ld:找不到框架armv7的螺栓

时间:2019-04-20 23:08:01

标签: ios delphi firemonkey

我尝试在Delphi Rio 中编译一个在Delphi tokyo 下运行良好的项目。我不能,因为我总是有这个错误:

ld: framework not found Bolts for architecture armv7

但是在全局delphi库路径中,我已正确设置:

C:\lib\ios\facebook\Bolts.framework

这是Bolts框架所在的路径:

C:\lib\ios\facebook\Bolts.framework\Headers\...
C:\lib\ios\facebook\Bolts.framework\Modules\...
C:\lib\ios\facebook\Bolts.framework\Info.plist
C:\lib\ios\facebook\Bolts.framework\Bolts

我想念什么?

注意:如果将C:\lib\ios\facebook\Bolts.framework\目录移动到全局 PlateformSDKs 目录中,则该目录有效。

2 个答案:

答案 0 :(得分:2)

我找到了出路:

如果我有

C:\Dev\Alcinoe\lib\ios\facebook\Bolts.framework
C:\Dev\Alcinoe\lib\ios\facebook\FBSDKCoreKit.framework
C:\Dev\Alcinoe\lib\ios\facebook\FBSDKLoginKit.framework
C:\Dev\Alcinoe\lib\ios\facebook\FBSDKShareKit.framework

我必须在搜索路径中添加所有这些目录,并在项目选项框架路径中添加ROOT路径

C:\Dev\Alcinoe\lib\ios\facebook\

然后就可以了!我仍然有警告

  

ld:警告:提供了自动链接   'C:\ Dev \ Alcinoe \ lib \ ios \ facebook / Bolts.framework / Bolts',框架   C:\ Dev \ Alcinoe \ lib \ ios \ facebook / Bolts.framework / Bolts中的链接器选项   不是dylib

但这是可行的

答案 1 :(得分:0)

我以这种方式包含Facebook SDK:

1)将所有FBSDK框架复制到活动的SDK中。对于iOS 12.1,它是: D:\Documents\Embarcadero\Studio\SDKs\iPhoneOS12.1.sdk\System\Library\Frameworks

2)告诉Delphi链接器包括SDK。

Project Options > Building > Delphi Compiler > Linking > Options passed to the LD linker下,添加以下行:

-ObjC -lz -framework FBSDKCoreKit -weak_framework Bolts