我有一个Xcode项目(foo),它构建了一个静态库(libfoo.a),其中包含一些重要的前/后构建步骤。传统上,当我在另一个项目中使用这个库时,我将foo.xcodeproj作为子项目添加到我的主项目中,然后在主项目中连接构建依赖项设置。
我希望使用CocoaPods让这更容易,但我不确定它是为此而设计的。我是否应该将foo项目中的构建设置复制到pod规范中,以便CocoaPods可以按照自己的方式构建它?我的前/后构建步骤怎么样?
有关于为封闭源pre-compiled libraries创建Pod的信息,例如TestFlightSDK,但我不想预编译我的库。
答案 0 :(得分:0)
使用Cocoapods,您无需担心目标本身。它创建一个包含库中所有源文件的新项目,并创建一个包含所有Pod依赖项的libPods.a。
如果使用正确的source_files和public_header_files创建Podspec,它应该可以正常工作。
答案 1 :(得分:0)
使用pre_install hook(0.17文档,语法略有改动),您可以执行所需的任何构建操作。
主仓库不鼓励使用此挂钩,但是对于私有规格,它是受支持的。
答案 2 :(得分:0)
可以使用prepare_command
钩子(documentation)并使用CocoaPods使用的ruby gem xcodeproj(xcodeproj site)来改变你的Xcode项目。我不确定,但可能会用它添加构建脚本。
不确定公共存储库中的podspecs是否接受此项。
答案 3 :(得分:0)
似乎已经为您解答了: Create podspec to ship static library
有两种方式显示(作为.a +标题库,或作为.framwerork)
认为.framework是一种首选的分享方式。