OSX框架中的Firebase SDK(v2.5.0)

时间:2016-02-08 13:42:37

标签: swift macos frameworks firebase

我试图在我的OS X框架内链接到Firebase SDK(v2.5.0),但它一直告诉我我正在尝试链接到为iOS构建的框架。

似乎在Firebase文档上清楚地说明iOS框架也可用于构建OS X客户端,所以有人知道我在这里做错了吗?

ld: in /[...]/Firebase.framework/Firebase(Firebase.o), building for OSX, but linking in object file built for iOS, for architecture x86_64

3 个答案:

答案 0 :(得分:4)

从2.4.0(changelog)开始,Firebase不再为iOS和OSX提供单个二进制文件,而是有多个框架(适用于iOS的Firebase.framework,适用于OSX的FirebaseOSX.framework)。同样,iOS Cocoapod名为Firebase,而OSX Cocoapod名为FirebaseOSX。这是由于我们的构建过程中的一些变化,例如添加bitcode支持(这在iOS上才有意义)。

我们仍然通过这些渠道构建和发布iOS和OSX,并继续支持OSX,尽管它没有大量宣传(正如您所注意到的)。如上所述,如果您不使用Cocoapods,使用https://cdn.firebase.com/ObjC/FirebasePlatform.framework-major.minor.patch.zip将为您提供框架,然后按照Alternative Setup instructions将其包含在您的项目中。

答案 1 :(得分:1)

您需要在项目的Build Phases中添加一些依赖项:

  

libicucore.dylib

     

的libc ++。dylib

     

CFNetwork.framework

     

Security.framework

     

SystemConfiguration.framework

如果您之前没有这样做,请参阅Apple docs如何添加这些内容。

答案 2 :(得分:1)

好的,这有点奇怪..但是在挖掘pod规格之后我注意到FirebaseOSX podspec链接到与iOS pod不同的URL(FirebaseOSX.framework和旧版本)。

所以我决定从Firebase站点复制框架URL,并更改名称并尝试,并为我下载了一个OSX框架。这真的很奇怪,因为我不能为我的生活理解我应该根据我在Firebase网站上可以阅读的内容这样做,所以我不能真正考虑这是官方的方式因为它不是真的有道理。但它似乎现在有用..

因此,对于v2.5.0,网址是:

https://cdn.firebase.com/ObjC/FirebaseOSX.framework-2.5.0.zip