在 CorePlot 的 CPTBorderedLayer.m 中从其模块外部使用 private header

Use of private header from outside its module error in CPTBorderedLayer.m of CorePlot

我升级到装有 El Capitan、XCode 7.1 和 Cocoapods 0.39.0 的新笔记本电脑。当我检查一个使用 CorePlot 框架的现有项目,运行 pod install 并构建项目时,我在 CorePlot 的 CPTBorderedLayer.m 文件中收到以下错误消息:

Use of private header from outside its module: '_CPTBorderLayer.h'
Use of private header from outside its module: '_CPTMaskLayer.h'

下面是我的播客文件的片段:

platform :ios, '9.0'
use_frameworks!
inhibit_all_warnings!

target 'my_project' do
...
pod 'CorePlot', :git => 'https://github.com/core-plot/core-plot.git'

这个项目使用 Xcode 7.0 和 cocoapods 0.37.2 编译得很好,但我真的不想降级所有东西,除非没有其他选择。

这个错误与CocoaPods设置框架项目的方式有关。临时修复是从 pod 文件中删除 use_frameworks! 行,让它将依赖项构建为静态库。

请在 Core Plot issue tracker 上报告问题,我们将看看是否可以解决此问题。