Module file's deployment target is ios9.0 v9.0

2019-03-17 18:22发布

问题:

I have a project using some modules that I have installed via cocoapods. One of them is Charts (https://github.com/danielgindi/ios-charts). In order to migrate my project from Swift 1.2 to Swift 2 I have gone through the wizard that comes up when first opening the project with XCode 7. The Charts module is already available for Swift 2, and I have changed my Podfile to contain the following in order to upgrade to this newer and not yet officially released version:

pod 'Charts', :git => 'https://github.com/danielgindi/ios-charts.git'

Now the project workspace opens fine in XCode except one error message that I can't get rid of myself, and I cannot find any helpful informations in the web:

At the place where I import my "Charts" module the above mentioned error message pops up. First, I made sure the whole project is set to deployment target IOS 9.0 as it was 8.0 before.

As this didn't solve the issue, I have done Product -> Clean, Product -> Clean Build Folder and finally deleted the "Derived Data" folder's contents. I also have re-started XCode after all these steps but the error still appears.

Does anybody have a clue what I could have missed? Thank you very much!

Christian

回答1:

Same, in my case

Selected TARGETS,

then go to "Build Settings"

Search for "iOS Deployment target” in search bar

Changed it from iOS 8.2 to 9.0 - in all



回答2:

In case you have to support older versions and you don't have the option to just upgrade the deployment target of your project to required version, try downgrade it in a pod itself:

  1. Select Pods project in Project Navigator
  2. Go through every pod in TARGETS list and change its Deployment Target to the version you need
  3. Clean and Build your project

Worked for me. show snapshot from Xcode



回答3:

For me, wiping out DerivedData fixed the issue. It seems that clean does not wipe out swiftmodule files.

rm -rf ~/Library/Developer/Xcode/DerivedData



回答4:

Just put "platform :ios, '8.0'" or whatever is your version in your Podfile and it will be solved.



回答5:

You have to update podspec file to s.ios.deployment_target = '9.0'



回答6:

In my case, where the imported module of Pod FOO was failing because it needed version X:

  • main app/project/targets were all set to minimum deployment target >= X [OK]
  • pod FOO itself had correct >= X minimum deployment target in its podspec [OK]
  • another pod, BAR, was using pod FOO, and BAR's minimum deployment target was less than X. [FIXED: edit BAR's podspec and increase min deployment target to at least X]

tl;dr; it could be that you're using pod 1 which is using another pod 2; the problem is in pod 1's podspec



回答7:

You need to go to Pods, and for every target inside that, set the same development target as you do for the main project, clean and build again.