Cannot pod spec lint because of undeclared type errors

541 views Asked by At

I'm trying to create a pod, witch rely on other pod to compile (JSQSystemSoundPlayer, JSQMessagesViewController, XMPPFramework)

I must add that the source code is written in Swift (1.2), on Xcode 6.3.2 and I'm using cocoapod 0.34.4 (XMPPFramework won't compile on the latest build (looped import))

I'm getting errors like this when I use the following command pod trunk push podname.podspec --verbose : podname has been changed

error: use of undeclared type 'NSFetchedResultsControllerDelegate'
error: use of undeclared type 'UIWindow'
[!] The podspec does not validate.

Here is my pod : podname has been changed

source 'https://github.com/CocoaPods/Specs.git'
use_frameworks!

target 'target_example', :exclusive => true do
  pod "podname", :path => "../"
    pod "JSQSystemSoundPlayer"
    pod "JSQMessagesViewController"
    pod "XMPPFramework"
    pod "FMDB"
end

Here is my podSpec : podname has been changed

#
# Be sure to run `pod lib lint pod.podspec' to ensure this is a
# valid spec and remove all comments before submitting the spec.
#
# Any lines starting with a # are optional, but encouraged
#
# To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html
#

Pod::Spec.new do |s|
  s.name             = "podname"
  s.version          = "0.1.0"
  s.summary          = "Summary"
  s.description      = <<-DESC
                       desc
                       DESC
  s.homepage         = "https://github.com/company/project"
  s.license          = 'MIT'
  s.author           = { "company" => "mail" }
  s.source           = { :git => "https://github.com/company/project.git", :tag => "master" }

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

  s.source_files = 'Pod/Classes/**/*'
  s.frameworks = 'Foundation', 'CoreData', 'UIKit'
  s.dependency 'FMDB', '~> 1.0'
  s.dependency 'JSQMessagesViewController', '~> 6.1.3'
  s.dependency 'JSQSystemSoundPlayer', '~> 2.0.0'
  s.dependency 'XMPPFramework'

end

All helps are appreciated

1

There are 1 answers

0
Loegic On BEST ANSWER

Those errors were linked with the absence of libxml anywhere in the Podspec, I fixed it by adding the following to my Podspec file:

s.libraries = 'xml2'
s.xcconfig = {
'HEADER_SEARCH_PATHS' => '$(SDKROOT)/usr/include/libxml2'
}