我正在开发iOS静态库项目(9.0) . 我决定将PubNub包含在我的静态库项目中 . 我遵循的步骤;
-
我已经下载了PubNub示例项目并进行了构建 .
-
我已将Framework文件(CocoaLumberjack和PubNub)复制到我的Supporting Files文件夹中 .
-
我关闭了xCode,并在项目目录中创建了PodFile .
-
PodFile的内容如下:
platform :ios, "9.0"
source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!
pod "PubNub", "~> 4.0"
- 安装完成后,我收到Debug和Release的警告说;
[!] xxxIOSFramework [Debug]
target覆盖Pods / Target Support Files / Pods / Pods.debug.xcconfig'中定义的
OTHER_LDFLAGS` build设置 . 这可能导致CocoaPods安装出现问题
-
我打开
.xcworkspace
并看到我的项目和Pods项目都在树中 . -
此时构建错误
ld: framework not found Pods
在我重新搜索之后,大多数人说删除了以红色突出显示的 Pods.framework
,我做了 .
-
删除
Pods.framework
后,构建继续给出错误,如;ld: -rpath can only be used when creating a dynamic final linked image
-
我搬到了
Target > Build Settings > Other Linker Flags
.ObjC
已添加,我还添加了$(inherited)
但错误仍然存在 .
任何人都知道在向iOS静态库项目添加 Cocoapods
时出现 -rpath can only be used when creating a dynamic final linked image
错误?如果需要,我可以提供更多信息 .
谢谢 .
1 回答
入门介绍了几种集成方式,从您的问题来看,您似乎一次使用了它们的机器人 .
如果你想构建自己的静态库并在其中集成 PubNub 和 CocoaLumberjack ,你应该坚持使用纯粹的 CocoaPods 方法 . 你需要:
Remove 添加了动态 PubNub 和 CocoaLumberjack 框架
从Podfile中删除 !use_framewors
通过删除工作空间,Pods文件夹和Podfile.lock来清理一下(如果你为CocoaPods安装了deintegrate插件,你可以调用它)
运行
pod install
这样你就可以在里面用PubNub客户端代码构建自己的静态库 .