2014-10-30 58 views
5

我正在开发音乐流iOS项目,并希望利用SoundCloud SDK。SoundCloud iOS SDK体系结构

我跟着本指南的发球: https://developers.soundcloud.com/docs/api/ios-quickstart

五只的SoundCloud依赖关系:

  1. CocoaSoundCloudAPI
  2. OAuth2Client
  3. JSONKit
  4. OHAttributedLabel
  5. CocoaSoundCloudUI

所有这五个项目都可以作为子模块使用,只需添加到当前的git存储库即可。根据上面链接的指南,您应该能够添加它们并与您的项目一起移动。但是,他们的架构完全不同! CocoaSOundCloudAPI,JSONKit,OHAttributedLabel和CocoaSoundCloudUI都是32位体系结构项目,而OAuth2Client是64位体系结构项目。

无论我构建我的项目为32位还是64位,我都会遇到Mach-O链接器错误。我在我的主Xcode项目中添加了32位和64位作为有效体系结构,但问题仍然存在。

我也一直无法找到这些子模块的其他版本。我不能成为唯一一个遇到这个问题的人,因为我一字一字地遵循指导原则,但是我无法在任何地方找到任何解决方案。

请帮我一把!

我正在使用Xcode 6并为iOS8 SDK构建。

谢谢!

编辑:

这里是我的架构和错误的截图... arhitectures erroes

回答

3

这里的东西,帮助我:

  1. 转到SmartSpeakers目标(或取其目标为您的应用程序)
  2. 构建设置 - >其它链接器标记
  3. 添加$(inherited)
  4. 建立它!
+0

神圣的废话的人,它的工作! 我放弃寻找本月前的解决方案!你太棒了,你是怎么弄出来的? – tbogatchev 2014-12-11 19:47:05

+0

这是一个'pod install'不断抛出的警告,所以我决定添加它。很高兴它也适用于您!我认为它的确确实实在在确保为相同的体系结构构建pod和您自己的目标?老实说,我不知道。链接器错误是我最不喜欢的错误。 – 2014-12-11 22:11:31

4

我使用的CocoaPods来管理这种依赖性强烈建议。我曾经将SoundCloud整合到一个项目中,但没有使用CocoaPods,这是一个后面的痛苦。看看这个链接,并搜索CocoaPods以查看如何安装它:https://github.com/soundcloud/CocoaSoundCloudAPI

+0

谢谢,我会试试看。 – tbogatchev 2014-10-30 20:11:09

+0

嘿,它没有工作。 我安装并启动了所有的豆荚,但得到了相同的链接器错误,我得到了更早。 – tbogatchev 2014-11-03 16:28:21

1

您是否试图部署到64位设备?尝试在目标 - >您的应用 - >生成设置 - >体系结构下设置Build Active Architecture OnlyNO

编辑:我按照指示,并创建了一个示例项目,建立。我无法弄清楚为什么你会得到这个链接器错误,但也许你可以将我的项目与你的项目进行比较。

http://lieberman.nyc/sample_soundcloud_project_for_relatively_slow_on_stackoverflow.zip

+0

我只是试图让它在模拟器上工作。 我试过用相同的结果模拟几个不同的iPhone世代。 我试过你的建议,但没有运气。 – tbogatchev 2014-11-04 16:39:27

+0

@relatively_slow你可以在原始文章中发布完整的编译日志吗?什么文件给你链接错误? – JAL 2014-11-04 17:05:19

+0

刚刚发布了日志,感谢您的帮助 – tbogatchev 2014-11-06 14:45:39

2

CocoaPods是为我走的路。我的Podfile看起来像这样:

pod 'CocoaSoundCloudAPI', '1.0.1' 
pod 'CocoaSoundCloudUI', '1.0.5' 
pod 'JSONKit', :podspec => 'https://gist.github.com/marcdown/5282955/raw/2a52cfd92f112f2a52669420c82c1bb1efd15d2a/JSONKit.podspec' 

截至本帖发布时,podspec取1.6.0版。在早期版本的JSONKit中,我遇到了一些折旧问题。如果您离开JSONKit的容器,则包含这些问题的早期版本将由Cocoapods安装。

我也不得不禁用ARC在其生成设置的JSONKit荚沉默ARC错误:

豆荚,JSONKit - >构建设置 - >苹果LLVM 6.0 - 语言 - 目标C

这并它对我来说。

+1

这对我有效,谢谢! – akmal 2015-01-30 13:12:43