Module file's deployment target is ios9.0 v9.0 with Xcode 7 / Swift 2

╄→尐↘猪︶ㄣ 提交于 2019-12-03 15:06:17

问题


I have a project using some modules that I have installed via cocoapods. One of them is 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!


回答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.



来源:https://stackoverflow.com/questions/32692828/module-files-deployment-target-is-ios9-0-v9-0-with-xcode-7-swift-2

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!