链接二进制文件中未与Cocoapods链接的静态库

时间:2015-01-21 08:01:17

标签: xcode swift xcode6 cocoapods

我正在使用Cocoapods 0.36.0.beta.1

如果我在我的规范中有一个静态库libssl.a,在TestSpec / Libs中找到并且我将它作为一个销售库包含在内,它似乎没有在目标项目中链接

这是我的podspec文件:

Pod::Spec.new do |s|
  s.name             = "TestSpec"
  s.version          = "0.0.1"
  s.summary          = "Test"
  s.homepage         = "https://www.google.com"
  s.author           = { "Ciprian Caba" => "1@2.com" }

  s.platform     = :ios, '8.0'
  s.requires_arc = true

  s.source           = { :git =>     "https://github.com/CocoaPods/CocoaPodsTest.git", :tag => s.version.to_s }

  s.source_files = 'TestSpec/*.{h,c,m,swift}'
  s.resource_bundles = {
    'TestSpecBundle' => ['TestSpec/*.png']
  }

  # s.public_header_files = 'Pod/Classes/**/*.h'
  s.frameworks = 'UIKit'
  s.vendored_libraries = 'TestSpec/Libs/libssl.a'
  s.libraries = 'ssl'
end

这是我的Podfile

platform :ios, '8.0'

target 'TestApp' do

pod 'TestSpec', :path => '../TestSpec'

end

目标项目中发生的事情是libssl.a文件被包含,Libs文件夹的路径被添加到搜索路径,但是在Build Phases选项卡上没有与a文件完成链接。根据我的理解,这应该发生,因为s.libraries =' ssl'

经过近一天的挣扎和测试,我无法理解我做错了什么

我还创建了一个test project

的回购

1 个答案:

答案 0 :(得分:0)

显然,库永远不会被添加到Build Phases选项卡,而是将以下行添加到Other Linker Flags:

-l"ssl"

Build Phases Tab

这实际上会使.a文件与目标一起构建,它永远不需要到达Build Phases选项卡