drmohundro / SWXMLHash

Simple XML parsing in Swift
MIT License
1.4k stars 203 forks source link

Can't install pod #153

Closed MakiCodes closed 6 years ago

MakiCodes commented 6 years ago

Hi there, if I want to install the pod via a podfile into an Xcode 9 project I get following error in the terminal:

Analyzing dependencies [!] Unable to satisfy the following requirements:

  • SWXMLHash (~> 4.0.0) required by Podfile

Can somebody help me?

drmohundro commented 6 years ago

Could you post your entire Podfile here? It should look something like:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target 'YOUR_TARGET_NAME' do
  pod 'SWXMLHash', '~> 4.0.0'
end

(by the way, I think my CocoaPods docs were somewhat out of date - I just fixed them...)

MakiCodes commented 6 years ago

Hmmm...Until now I didn't used the first line in my pod files and it worked. (source 'https://github.com/CocoaPods/Specs.git')

I also tried it now with the first line inserted, but then I come to the following output in my terminal:

Markuss-MacBook-Pro:Boardgame Quiz v0.2 maki$ install pod
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 file2
       install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
               [-o owner] file1 ... fileN directory
       install -d [-v] [-g group] [-m mode] [-o owner] directory ...
Markuss-MacBook-Pro:Boardgame Quiz v0.2 maki$ 

Here is my Podfile if it helps you:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'

target 'Boardgame Quiz v0.2' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Boardgame Quiz v0.2
  pod 'Alamofire'
  pod 'GABoardGameGeek'
  pod 'SWXMLHash', '~> 4.0.0'
  pod 'SwiftSoup' 
end

As I said, in my earlier attempts I didn't used the first line. I only have this problem since updating to Xcode 9

Thanks!

drmohundro commented 6 years ago

Ah, sorry, that line I mentioned isn't required. Also, in the code you posted, you ran install pod instead of pod install. The output from pod install with your code is:

$ pod install
Analyzing dependencies
[!] Unable to satisfy the following requirements:

- `SWXMLHash (~> 4.0.0)` required by `Podfile`
- `SWXMLHash (~> 2.2)` required by `GABoardGameGeek (0.1.0)`

So the issue is actually because of the GABoardGameGeek pod. Even its latest version in GitHub requires SWXMLHash ~> '3.0.0' (see its source), but your code is asking for 4.0.0. It works for me if I specify 3.0.0 instead. Like so:

platform :ios, '10.0'
use_frameworks!

target 'SWXMLHash Test' do
  pod 'Alamofire'
  pod 'GABoardGameGeek'
  pod 'SWXMLHash', '~> 3.0.0'   # changed this from 4.0.0 to 3.0.0
  pod 'SwiftSoup' 
end

Then, the output is:

$ pod install
Analyzing dependencies
Downloading dependencies
Installing Alamofire (4.5.0)
Installing GABoardGameGeek (1.0.0)
Installing SWXMLHash (3.0.5)
Installing SwiftSoup (1.4.2)
Generating Pods project
Integrating client project

[!] Please close any current Xcode sessions and use `SWXMLHash Test.xcworkspace` for this project from now on.
Sending stats
Pod installation complete! There are 4 dependencies from the Podfile and 4 total pods installed.

If you have to have 4.0.0 SWXMLHash functionality, then you can either ask on that repo to see if it can be updated to support SWXMLHash 4.0.0 or you could fork it.

Hope this makes sense.

MakiCodes commented 6 years ago

Thanks a lot!

drmohundro commented 6 years ago

Happy to help!