Could not build module 'nanopb' error in Xcode 12.0.1 - ios

I upgraded my Xcode to 12. Everything was working perfectly and all of a sudden I kept getting bellow error message (Image below)
SO link have tried using to solve this issue
SO Link
What I've done so far
Cleaned Build Folder
Restarted Xcode
Updated Cocoapods
Deleted DerivedData
Cleared pod cache
Deleted pods directory and file and reinstall
None of them worked and its getting frustrating.
Pod file

All I did was to follow the instruction(see image below) and it got fixed.
Source here

I had the same problem with a project still targeting iOS 8 as the minimum iOS version. This steps solved my problem:
Update minimum target iOS version to iOS 9 on Podfile file;
Open terminal on project folder, remove all pod file dependencies and update them by running:
rm -rf /Pods
pod repo update
pod install
Update minimum project target iOS version to iOS 9;
Remove DerivedData;
Clean project;
Compile/run project again.

A simpler solution is to update cocoapods to the 1.10 version
First, update the CocoaPods installation :
[sudo] gem install cocoapods
Then, update your project : bundle update cocoapods
Finally, run pod install and everything should be OK :)

If the previous solutions did not help someone, then try changing it this way:
#include <nanopb/pb.h>
->
#include "nanopb/pb.h"

This issue CAN be the result of developing iOS on an M1 (Apple Silicon) machine. In this case, the only way to fix the problem is to download a Ruby extension called "ffi" which you can read about here (for extra information): https://rubygems.org/gems/ffi/versions/1.0.9
To do this:
In Terminal, install ffi onto your machine using this command:
sudo arch -x86_64 gem install ffi
Then in your project file, install your podfile with this command:
arch -x86_64 pod install
This should allow you to install your pods (especially if you were getting a "zsh: abort pod install" problem. Notice Terminal will warn you "a bug in the Ruby interpreter or extension libraries".
After this, if your pod was FireStore/FireBase you may have to get another GoogleService-Info.plist file in your project.

Related

How to solve "error running pod install" in flutter on mac?

I have an error when I tried to launch my project on my iPhone, the basic Flutter example is working on my iPhone but when I use my project I have this error.
In Flutter project, I Also faced with this issue. Fixed by updating flutter and cocoa pods to the latest version.
Solution:-
flutter clean
rm -Rf ios/Pods
rm -Rf ios/.symlinks
rm -Rf ios/Flutter/Flutter.framework
rm -Rf ios/Flutter/Flutter.podspec
flutter pub get
cd ios
pod install
arch -x86_64 pod install //(On an M1 mac use => arch -x86_64 pod install)
cd ..
flutter build ios
flutter run
You can fix it with
sudo arch -x86_64 gem install ffi
I got this error when I was using Firebase in flutter, the solution for me was to set the Podfile deployment target to a iOS version higher than 9.
Example:
Changed this
#platform :ios, '9.0'
to
platform :ios, '13.0'
And as #Mana commented, remember the higher the version you set, your app will not be supported for users with lower IOS versions
I faced the same issue and none of the above work. Finally I resolved it by:
Check ios/.symlinks/plugins contains extra plugin which you are not using.
Delete podfile.lock in ios folder, if it exists.
Delete podfile from ios folder.
Delete pods folder in ios directory.
Run flutter clean in the terminal.
Run flutter pub get in the terminal.
Run flutter runin the terminal.
2022 update
After struggling for hours the following helped me:
sudo gem uninstall cocoapods
brew install cocoapods
Make sure you have HomeBrew installed before you do the above. Steps to install HomeBrew: Install HomeBrew
For Mac M1, try the following commands. Worked for me fine
sudo arch -x86_64 gem install ffi
arch -x86_64 pod install
Change directory to your project; e.g /dart/apps/abc
Type, flutter clean && pod update
So did you solve this problem?
I met the same situation. And this is the solution I found.
Link
Basically:
Locate Terminal.app in Finder. (Applications->Terminal.app)
Right-click and choose Get Info
Check the “Open using Rosetta”
Quit all instances of Terminal app and run it again
Run sudo gem install ffi
After you finish the above several steps, restart your IDE and re-run the application.
Please give a reply if this method works.
I'm using VS Code and flutter 2.10.1
running intel mac
I've faced this problem several times, usually when switching between projects or when working with multiple versions of project. But the solution is pretty simple.
Inside your project parent directory go to, ios -> Podfile. Here the top line will be something like this,
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
check whatever version you are using on simulator and replace '9.0' with that and uncomment.
# Uncomment this line to define a global platform for your project
platform :ios, '15.4'
Now if we try to run the flutter project, the debugger will say that the cocoapods are outdated. So just update them using command
pod repo update
And that should solve the problem.
Simply delete the Podfile from your project
Run this command in terminal (I did in Android studio terminal it self)
sudo gem install cocoapods
And then run this
pod init
It works for me..
The link https://cdn.cocoapods.org does not work correctly, I had to change the source in ios/Podfile as described in the code below:
Change source in ios/Podfile
# platform :ios, '9.0'
source 'https://github.com/CocoaPods/Specs.git'
Clean your project
flutter clean
Install referenced packages
flutter pub get
Run the app
The error can also come from a package which requires a version higher than '9.0' in this case it is necessary to uncomment the line # platform :ios, '9.0' and to pass for example to version '14.0' according to the version requested by the package.
Delete the podfile.lock (located in app root > ios folder)
Run in Terminal pod install --repo-update
flutter run
There are multiple reasons this could occur so a one-size-fits-all solution won't exist.
Instead, in terminal, run:
$cd ios
$pod install
This will give you more in depth information on the error and you can search from there. In my case one of my dependencies required a higher minimum ios version so I had to open the .xcworkspace file and adjust the minimum deployment version in xcode>targets>general>minimum_deployments
For me none of the above helped, the following worked on my case:
Deleted the macos folder from main project.
Created a dummy flutter project.
Copied the newly created macos folder.
Pasted it to my main project.
Additionally I use firebase plugins, so I made some changes in pod file,..
It started running.
I'd the same problem, in my case when I ran pod install --verbose I realize that there was an specific error during pod install
undefined method `each_child' for #Dir:0x00007ff10befa7f0 Did you mean? each_slice
Looking for this specific error I found this answer and I realize that I was using ruby 2.5 and one file generated by Flutter for iOS devices was trying to use a method that was introduced on version 2.6.
After follow the steps on that answer I could run my Flutter app on iOS simulator.
The method dir.each_child was introduced in Ruby 2.6, but you are using Ruby 2.3.0.
You should update Ruby to 2.6.0 or later 2.x version.
After Ruby updating you may also need to restart your IDE and re-install cocoapods.
Check in ios/.symlinks/plugins for unused plugins. and if there are, remove from pubspec.yml. This solved my problem.
As per the install instructions make sure M1 users run. Solved the issue for me. I missed it on install!
$ sudo softwareupdate --install-rosetta --agree-to-license
run this code on the terminal
sudo arch -x86_64 gem install ffi
Next, go to the ios folder in your project, and open Podfile.
Then change #platform :ios, '9.0' to platform :ios, '10.0'
I solve the same issue so:
Delete podfile.lock in iOS-folder app
Run pod repo update in the terminal
Re-compile my code
I had similar problems running flutter web on mac.
Make sure you uncomment and update the podfile from macos folder not ios
I'm talking about these lines:
# Uncomment this line to define a global platform for your project
platform :osx, '15.4'
If you want an automated script to change the deployment target, use
sed -i '' 's/9.0/10.0/' ./.ios/Podfile
where 9.0 is the generated iOS version and 10.0 the desired
on your pipeline, shell script or whatever
If anyone is struggling on M1 machines with a particular pod, the following helped me:
flutter precache --ios
arch -x86_64 pod update Firebase/Firestore //or name of pod from the error
Open Your Terminal paste this line of code open ~/.zshrc press Enter
if you don't have the zshrc file you will have to create it, to create it you need to open terminal paste this code touch ~/.zshrc add you flutter path and move to Second instruction
2 The Text File will open add then you add this export LANG=en_US.UTF-8

Getting error while generating iOS build using ionic that is "The sandbox is not in sync with the Podfile.lock." in MAC Mojave

Recently I am getting this "The sandbox is not in sync with the Podfile.lock" issue.
This source codes were running good in previous mac OS, means after Mojave update it build is not running... I have checked and tried to solve by cocapods related issue.
I have checked many similar questions answers but no one is working for me.
Is there any solution at this situation?
as the error say u need to install the pod or update cocoa pods in your project run:
to install cocoapods
sudo gem install cocoapods
pod repo update
and then go to platform/ios and run :
pod install
and if need it remove the ios platform and add it again to 4.5.5 and install the pod again

Xcode 10 GM multiple command produce... Pods issues

Just switched to xcode 10 Golden Master and start getting the error with one of my pods, FDTake. Tried this thread but I don't have a plist in my build phases, so it didn't work. Is this issue pod related?
Showing All Messages
:-1: Multiple commands produce '***/Xcode/DerivedData/app-fgyqhwrvkbjquheilgwhyjltujtz/Build/Products/Dev-iphonesimulator/FDTake/FDTake.framework/Info.plist':
1) Target 'FDTake' (project 'Pods') has copy command from '***/GoogleDrive/dev/_ios/Work/sutulp/Pods/FDTake/Source/Info.plist' to '***Xcode/DerivedData/app-fgyqhwrvkbjquheilgwhyjltujtz/Build/Products/Dev-iphonesimulator/FDTake/FDTake.framework/Info.plist'
2) Target 'FDTake' (project 'Pods') has process command with output '***Xcode/DerivedData/app-fgyqhwrvkbjquheilgwhyjltujtz/Build/Products/Dev-iphonesimulator/FDTake/FDTake.framework/Info.plist'
I also tried to remove the derived data folder, but it didn't work either. Tried to clean the project and so on – no luck. Any advice is appreciated.
Switch to old build system will not be a solution.
I had same problem with Xcode 10 GM. In my case Cocoapods not found. So, require to re-installed it.
To find if Cocoapods is installed or not run command on terminal. pod --version
if the result is Not Found Pods is not installed. So, run command on terminal $ sudo gem install cocoapods --source http://rubygems.org
Hope it's helps to you...
This looks very similar to this question: Xcode 10 Error: Multiple commands produce
Here is a link to the most voted answer https://stackoverflow.com/a/50719379
If this doesn't work, you may have a Pod dependency cycle for that pod.
In my case, there was such an issue.
In my pod project the target Lock had a target dependency to the Lock-Auth0 framework so I had to remove the line for "Lock-Auth0" for the Lock target by going to Build Settings > Target Dependencies > & Copy Bundle Resources (this will be undone if you run pod install again) .
I took a look at the Lock.podspec and realized that the dependency has been removed on the latest version so upgrading to the most recent version of the Pod will be my next step.
Hope this helps.
here is a screenshot of my error

How cocoapods works with xcode 6 on OSX 10.9.3?

please help me on this. I've updated my xcode to xcode6 and now I'm not able to run my application on it due to cocoapods errors. I searched around the web also follow the below steps :
Open Xcode 6
Open Preferences (Menú Xcode-Preferences)
Click the Locations tab
Change the Command Line Tools version to Xcode 6.0
Uninstall from a terminal window cocoapods (all installed versions prompted)
$ sudo gem uninstall cocoapods
Uninstall xcodeproj (all installed versions prompted)
$ sudo gem uninstall xcodeproj
Install xcodeproj
$ sudo gem install xcodeproj
Install cocoapods (retry a second time if fails with a error)
$ sudo gem install cocoapods
Run pod –version to verify that it worked
But Still I'm getting error on pods. My application is running well in xcode 5.1.1 but not in xcode 6. I'm getting error on "SDWebImageDownloaderOperation.m" file and the error is semantic issue.
One more thing when I'm doing pod update in my project folder where the podfile installed, Removing SSToolkit shown and SSToolkit folder removed from project folder. But in xcode 5.1.1 SSToolkit is there.
please someone help me to rid of this issue....
thanx
Your problem is with SDWebImage, not with cocoapods. because of the presence of the getter attribute on the executing and finished properties, the newer version of XCode is not auto-synthesizing the variables.
There should be a compatible version RSN, but to work around it for the time being, you should change your podfile for the package to add the version:
pod 'SDWebImage', :head
Once it gets released you can remove the reference to :head
Note this is a real 'short time window' question - This package will probably start working again in a few days without intervention from anyone barring a pod update.
This is the problem with the SDWebImage.
Just replace _executing with self.executing.
And clean your code and build it again.
Thanks
Sarabjit Singh

Cannot compile Cocoapods with XCode/Obj-C – "Pods-prefix.pch.dia: No such file or directory"

I am using XCode 4.5.1 and iOS 6.0 base SDK.
Here is the error I am receiving:
i686-apple-darwin11-llvm-gcc-4.2: /Users/fahim/Library/Developer/Xcode/DerivedData/Currenthiphop-emodxxwwaiojlcboaxuodksuwuww/Build/Intermediates/PrecompiledHeaders/Pods-prefix-evibdktwbatdnbabmrlnderfsxxi/Pods-prefix.pch.dia: No such file or directory
There is only 1 file in the Pods-prefix-xxx directory:
Pods-prefix.pch.pth.hash-criteria
Here is my Podfile:
platform :ios
pod 'LibComponentLogging-Core'
pod 'LibComponentLogging-LogFile'
pod 'LibComponentLogging-qlog'
pod 'LibComponentLogging-pods'
pod 'Facebook-iOS-SDK'
pod 'RestKit'
Any help is appreciated. Thank you!
I actually found this solution right here that details opening up Xcode using normal means (Finder or the Dock), as opposed to using the open <Workspace>.xcworkspace command. I've always used Xcode from my dock, whereas the other developer (who couldn't build the project and was getting the error you were) was using the open command from the command line. Once he opened Xcode from the Dock, and manually browsed to open the project that way, he could build it successfully.
If you are using CocoaPods 0.18.0, this might be cause by CocoaPods and is fixed in https://github.com/CocoaPods/CocoaPods/issues/956
Extra quote in "$(inherited)" was the cause (https://github.com/CocoaPods/CocoaPods/blob/master/lib/cocoapods/generator/xcconfig.rb#L150). It should not be quoted. If you remove them from the xcconfig the project will build again. You may want to check your xcconfig and see if there are extra quote.
This issue can be caused by a few different factors but in my case and the case of some colleagues, this resolved the missing pch.dia
Uninstall CocoaPods and install 0.17.1
sudo gem uninstall cocoapods
sudo gem install cocoapods -v 0.17.1 --verbose
Lock your Kiwi version to 2.05 if Kiwi is one of your pods:
target :KiwiUnitTest, :exclusive => true do
pod 'Kiwi', '2.0.5'
Clean your Xcode project including Derived Data. Close down Xcode, re-open the project and build.

Resources