我正在尝试使用既有iOS又有OSX目标的遗留项目来设置CocoaPods。支持iOS和OSX的Podfile
如果在我的Podfile的顶部,我指定:
platform :osx, '10.9'
,并作为一个例子,说明像CorePlot荚:
pod 'CorePlot'
然后,pod update
后,我看到Mac Pods目录中的特定源代码:
Pods/CorePlot/framework/MacOnly
这是好的,除非如果我是s pecify :ios
为platform
然后我看到:
Pods/CorePlot/framework/iPhoneOnly
,我不看到MacOnly
目录。
CorePlot的podspec基于平台指定这些目录,这就是为什么它们基于我选择的平台显示不同。但是,我希望能够让我的Podfile适用于我的iOS和OSX目标。
我继续和想也许我可以根据我的项目中的目标上指定的平台,并省略顶层平台声明:
target "OSX" do
platform :osx, '10.9'
end
target "iOS" do
platform :ios, '7.0'
end
但是,一旦我再次做了pod update
现在我得到一个版本兼容性错误:
[!] The platform of the target
Pods
(OS X) is not compatible withCorePlot (1.5.1)
which has a minimum requirement of iOS 3.1.3 - OS X 10.5."
这似乎表明CocoaPods无法识别我的目标块中的版本信息。
而且,如果我将平台添加到顶层,除目标特定平台之外,我将只获取顶级平台指示的任何平台的代码。
我被迫有两个独立的项目吗?一个用于iOS,一个用于Mac OS X,或者有办法做到这一点?
非常感谢,
列维
CocoaPods : 0.31.1
Ruby : ruby 2.0.0p247 (2013-06-27 revision 41674) [universal.x86_64-darwin13]
RubyGems : 2.0.3
Host : Mac OS X 10.9.2 (13C64)
Xcode : 5.1.1 (5B1008)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib Repositories : master - https://github.com/CocoaPods/Specs.git @ bf6ff4b23c2e8b9e5fe5840eddfc3bad122eb932
提起的一个问题:https://github.com/CocoaPods/CocoaPods/issues/2043 – levigroker