Reputation: 401
I updated Xcode to version 10 recently and started to receive a strange error when trying to build my project. I'm currently on Swift 4.0 and I did try to upgrade to swift Version 4.2. But when I did I received this same error in many of my frameworks.
Command Compile Swift failed with a nonzero exit code
So far I've deleted the derived folder. Updated all pods, also deleted all pods and reinstalled them using the terminal commands below.
sudo gem install cocoapods-deintegrate cocoapods-clean
pod deintegrate
pod clean
pod install
This didn't work to fix my issue. However, I found something that could work which was adding arm64
architecture in Build Setting -> valid architectures
and enabling automatic code But, when I checked it was already there and code signing was enabled already.
Additionally, I do have a few other build errors that have to do with frameworks.
SwiftMessages
Value of type 'SwiftMessages.Config' has no member 'presentationContext'
WhatsNewKit
Missing argument for parameter 'backgroundColor' in call`
I opened issues with the developers of each of these frameworks to seek help with these issues.
Issue On SwiftMessage GitHub Issue On WhatsNewKit GitHub
When I click presentationContext
it brings me to the struct within the SwiftMessages
Framework. Usually, when I've had the "has no member" warning I cannot click to see the original place where it exists.
I assume this has something to do with cocoa pods, but haven't been able to find a solution yet. What can I do to correct this issue? If anyone could help would be deeply appreciated been stuck on this for a day now.
Update: The two frameworks latest builds were for swift 4.2. When I changed the version of each framework to one that was built in swift 4.0 I got the project to build.
Upvotes: 23
Views: 59280
Reputation: 1
First Open Workspace Setting and press --> to go to derived data, delete that Derived Data folder, then close code completely,
now open your project ios folder and press Command+Shift+ . (Command+Shift+dot) that will show hidden
Delete .xcode.env.local and build folder
Now open the xcode , clean build folder and build your project again
Upvotes: 0
Reputation: 63
I faced this issue on Xcode 14. Add this on podfile bottom.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
# some older pods don't support some architectures, anything over iOS 11 resolves that
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0'
end
end
end
Upvotes: 0
Reputation: 31
only for re-install pod using that command pod install
see below attachment
Upvotes: 3
Reputation: 1848
Specify your pod's version for example pod 'RealmSwift', '~> 5.3.5'
or uncomment # platform :ios, '9.0'
in your Podfile
Upvotes: 0
Reputation: 303
target 'XYZ' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for xyz
pod 'SwiftyJSON'
pod 'Localize-Swift'
pod 'Alamofire'
pod 'Kingfisher'
pod 'Tabman'
pod 'RSSelectionMenu'
pod 'Pushbots'
pod 'ACProgressHUD-Swift', '~> 1.4'
pod 'SKPhotoBrowser'
pod 'ZoomableImageSlider'
pod 'RSSelectionMenu'
pod 'DropDown'
pod 'ImagePicker'
end
I updated platform :ios, '10.0' to 11.0 and the error disappeared. Change your platform or OS version and check. Hope that could help.
Upvotes: 0
Reputation: 10622
This error happened to me when I used same class name in two different groups. Then I renamed one of the classes and the problem was solved
Upvotes: 4
Reputation: 1181
Good Morning! Do a clean. using"commond + shift + k Close Xcode. Navigate to project directory where the Podfile exist. Do pod update/pod install Open x.xcworkspace
Upvotes: 4
Reputation: 672
I just had the same error message and none of the answers here and in the duplicates of this question were applicable to my project or helpful. I kept on reading through the error messages and came to a realisation that I had stupidly named two seperate swift files in different folders with the same name intending to change one, but before I got to change one, I tried to run my project and have been annoyed for the last hour.
Bottom line, don't accidentally name your files the same name and read your error codes thoroughly!
Upvotes: 1
Reputation: 616
In my case it was a code error:
self.myDto.map{ (dto)} in
var stringValue = (dto.value(forKey: "name") as! String)
stringValue.append("c")
return stringValue
}
Just removed that stringValue
variable fixed the problem.
Upvotes: 1
Reputation: 2362
I'm having the same problem, my Xcode version is 10.2.1 (10E1001), Cocoapods version is 1.7.0.beta.2.
I returned to Cocoapods 1.6.1 and the problem was solved. The specific steps are:
pod deintegrate
to cancel the integration.Uninstall all Cocoapods.
for i in $( gem list --local --no-version | grep cocoapods );
do
gem uninstall $i;
done
Install the stable version of Cocoapods. For now it's 1.6.1.
gem install cocoapods
Clean Project and empty DerivedData
pod install
Upvotes: 1
Reputation: 119
Same issue happened to me in Xcode 10.2, it was a Xcode bug..! So, I opened in older Xcode version(9.4), and it worked fine. Then I updated to the Xcode 10.2.1 after it's release -> Clean and build your project, now my problem solved.
Upvotes: 1
Reputation: 3937
I stumbled upon this problem when upgrading to Xcode 10.2 and Swift 5. After trying everything I found this in the release notes:
The Swift compiler may crash during a build when the Thread Sanitizer is enabled. (48719789)
And sure enough, efter turning off Thread Sanitizer my project could be compiled without errors again.
So if you get this error and have Thread Sanitizer enabled - turn it off!
Upvotes: 1
Reputation: 1075
In my case I connect an actual iphone not simulator and run the app once on it, It solved the problem. But connect iphone firstly, then choose it from this menu, then press run button. The problem will solve too.
Upvotes: 1
Reputation: 1119
I had several frameworks (homegrown) plus my app. Somehow they ended up being out of sync as far as the Swift version. Make sure that all frameworks are the same version. In my case, they all needed to be set to Swift 4.2. If you haven't done the migration to 4.2 then remember that Xcode helps with this: Edit -> Convert -> To Current Swift Syntax.
Upvotes: 3
Reputation: 13181
All of the answers were helpful to me. In my case, I only install frameworks manually but this kind of problem also happens. I tried all of the answers and was still getting this issue during the build. Curiously, while coding, I could cmd-click and resolve all of the "missing" components. I also cleaned and deleted derived data, restarted Xcode, etc.
I eventually got it working by inducing these additional steps:
On each of the framework project/targets (including my own):
Upvotes: 3
Reputation: 49
Set Swift version to 4.2 then pod deintegrate, pod install, fix this problem for me. Thanks @alejandro-iván
Upvotes: 4
Reputation: 1943
Make sure that, Your project build settings Optimization Level is in No Optimization[-Onone].
Upvotes: 5
Reputation: 101
for pod SwiftMessages if your app is not swift 4.2 you need to user the version 5.01 pod 'SwiftMessages', '~> 5.0.1'
and it will work like a charm
Upvotes: 4
Reputation: 2415
I solved this way:
Repeat steps 2 - 3 - 4 -5 for each uncomment library in your .pod file
I hope it can be of your help.
Upvotes: 5
Reputation: 413
Make sure that, your project Swift Language Version is in the proper version. SwiftMessages 6.0.0 works with Swift 4.2.
Upvotes: 9