【问题标题】:CocoaPods: use static lib into a podCocoaPods:在 pod 中使用静态库
【发布时间】:2018-01-29 15:21:24
【问题描述】:

我有一个依赖于静态库的 pod(预编译,源代码不可用)。

在这个 pod 项目中,我拖放包含“.a”文件和其他一些 C、Obj-c 文件的文件夹。

当我尝试将这个 pod 包含在应用程序中时,Cocoapods 会复制所有这些 pod 文件,但不会复制“.a”文件。

在 Podspec 中,我使用它来将预编译的库包含到我的 pod 中

  s.ios.vendored_frameworks = 'path/a_staticLib.a'

上面的行将文件复制到框架(Pods 文件夹)中,这是正常的,因为它被称为“vendored_frameworks”,但我找不到任何使用静态库的解决方案。

我遇到的错误:

ld: framework not found -framework
clang: error: linker command failed with exit code 1 (use -v to see invocation)

谢谢。

【问题讨论】:

  • 对静态库使用 vendored_libraries 而不是 vendored_frameworks。见那里:guides.cocoapods.org/syntax/podspec.html#vendored_libraries 另外,不要忘记添加s.ios.xcconfig = { "HEADER_SEARCH_PATHS" => "$(PODS_ROOT)/myPathForHeadersOfTheStaticLibrary" }
  • 谢谢@Larme,如果您想将其添加为答案,我会接受。

标签: ios xcode dependencies cocoapods static-libraries


【解决方案1】:

CocoaPods Podspec documentation 中所说,静态库需要使用vendored_libraries

所以这一行:

s.ios.vendored_frameworks = 'path/a_staticLib.a'

应该是:

s.ios.vendored_libraries = 'path/a_staticLib.a'

【讨论】:

    猜你喜欢
    • 2013-06-10
    • 1970-01-01
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 2014-11-26
    • 1970-01-01
    • 1970-01-01
    • 2016-07-25
    相关资源
    最近更新 更多