Apple Mach-O Linker Error Group - React Native after installing firebase - ios

I've been facing the following issue since I installed firebase dependencies from https://www.npmjs.com/package/#react-native-firebase/app as specified for React Native. Since then the Xcode console prints out the following error:
"ld: library not found for -lBVLinearGradient clang: error: linker command failed with exit code 1 (use -v to see invocation)"
That lib from Linear Gradient was causing no issue at all since the install of firebase and proper links following the documentation. Now it seems to be affecting other dependencies as well.
I've already re-created the iOS folder, ran pod install and the error persists. After doing that process, I had to link the project using react-native link to load the fonts I was using and the error came back again.
I am using the following version of Xcode: "Version 10.3 (10G8)", and the firebase dependencies inside pods folder are: "Firebase", "FirebaseCore" and "FirebaseCoreDiagnostics".
Note: inside pods folder there is no "LinearGradient" pod at all.

Recent versions of Firebase require at least Xcode 11 - and very soon, will likely require Xcode 12.

Related

Xcode Swift Parse Framework Installation Issue (Command PhaseScriptExecution failed)

I'm having lots of trouble installing the 'Parse' Cocoapod library/framework on Xcode. (version 10.3)
What I did:
After initializing a podfile with "pod init", and adding "pod 'Parse'" into the file, I ran "pod install" from terminal and integrated the pod into Xcode. There are no compiler errors and the pod library is showing up and looking fine with autocomplete working on it as well
The issue:
Upon trying to run the app, it gives me an error:
Command PhaseScriptExecution failed with a nonzero exit code
More specifically, it gives me:
[filepath].../Pods-Real Estate App-frameworks.sh: eval: line 131: unexpected EOF while looking for matching `''
Things I've tried already:
Completely reinstalling and reintegrating pods
Restarting Xcode
Restarting my computer
Unlocking and relocking the login keychain
I tried installing pods and bolts just by downloading the framework files but they generated different errors (I think because the two frameworks weren't linked together properly doing it that way? I couldn't figure out how to fix that either)
Weird solution that I don't even know how I came across:
The issue was that a directory that contained my project had an apostrophe in it. I fixed it by renaming the directory, and then deleting the derived data folder in my project, cleaning the project and then running it.

iOS firebase Mach-O Linker Error without cocapods

I'm trying to import Firebase into my iOS app. I followed this tutorial for doing this manually with Objective-C (as opposed to using CocoaPods).
http://www.mokacoding.com/blog/setting-up-firebase-without-cocoapods/
When I try to build my project, I get the following errors:
"Apple Mach-O Linker Error"
"Linker command failed with exit code 1 (use -v to see invocation)"
I'm familiar with the Linux CLI (less so with Macs), but I don't understand how to apply the -v flag to XCode's build process to get more info.
I've been Googling this for the last 3 hours, but every answer I find seems to be directed at users who weren't using an XCode workspace with CocoaPods.
I don't have CocoaPods installed, so I don't think this is my issue. Despite that I have converted my project and properly imported it into an XCode workspace, this still didn't solve my problem.
My app is a Swift project, and I have imported the modulemap, firebase.h, and googleServices.plist files.
I've also made my Header and Library search paths recursive for the entire project folder in an attempt to fix this.
Here's my project navigation. Although at this point I suspect it's some kind of build setting that isn't correct.
Some selected answers I've tried to apply without success:
Apple Mach -O Linker command failed
In Xcode how do I create a new workspace and add 1 project to it so that I can see the project and its files?
Framework not found GoogleToolboxForMac
Adding system header search path to Xcode
https://github.com/firebase/firebase-ios-sdk/issues/258
Apple Mach-O Linker & Ditto Error - Xcode 8
https://github.com/invertase/react-native-firebase/issues/198
https://forum.ionicframework.com/t/ios-xcode-8-apple-mach-o-linker-ld-error-group-in-xcode/89903
Upgrading to xcode 9.2 fixes this. It appears to be an issue with earlier versions not properly handling linking.
Which is misleading b/c the firebase documentation indicates it's compatible with xcode 8. But I think that's assuming you use cocoapods. If you don't, and instead try to link the obj-c frameworks you need xcode 9+
Once I knew how to examine the more verbose linking error, googling for x86_64 led me to some helpful answers.
This and other answers helped me investigate upgrading.
ld: framework not found Stripe for architecture x86_64

Build failing, Parse-Server/Pod/Bolts

I'm using Parse-Server/Heroku and just installed the pod for Parse in an iOS project of mine (written in objective C).
I am using Xcode Version 9.2 and pod version 1.3.1.
The macOS is High Sierra Version 10.13.2.
When I try to build the project, I get this error:
ld: library not found for -lBolts
clang: error: linker command failed with exit code 1 (use -v to see invocation)
But Bolts seems to be installed, as a dependency when I run pod install.
Any idea about what I can do to solve the problem?
I presume the information I am giving here may not be enough. If more is needed to solve the issue please let me know what I should provide.
If you're using cocoapods, make sure you're opening the generated workspace and not the project itself.

Xcode 8.3 Archive error: Linker command failed with exit code 1

I started getting this error only after upgrading from Xcode 8.2 to Xcode 8.3, and only when making an archive build (debug builds work fine).
When I do the archive via Xcode, the only message I get is "Linker command failed with exit code 1 (use -v to see invocation).
I build with the command line xcodebuild -scheme MyProduct
When I built this way, I found a number of issues (again, only when doing Archive):
I had to add import UIKit to practically every swift file.
all the pods had issues
remove everything from app-Bridging-Header.h
add a few things back into app-Bridging-Header.h
My current issue is with the AWS pod, using version 2.5.3
So my app-Bridging-Header.h has #import <AWSS3/AWSS3.h>
Here is the error from the command line build:
error: 'AWSS3/AWSS3.h' file not found with <angled> include; use "quotes" instead
#import <AWSS3/AWSS3.h>
^
The error log continues after that. I also tried the crazy suggestion of switch in the import to "AWSS3/AWSS3.h"...that didn't work either.
What is going on?
More INFO
This really appears to be an issue with one of my pods. I built a new solution, imported a subset of my pods and everything built. Then when I updated with the full list of pods it broke.
For me it is coming due to Bitcode enable in my project and i have used a custom framework with disabled bitcode.
Two things you can do :
Either disable bitcode in your project
OR
Build framework with bitcode enable
NOTE: If you click on error and it doesn't show anything then right click on error and select Reveal in Log. You will get error for this issue
At long last I was able to figure out this was a pod issue...just had to figure out which one it was.
I created a brand new project and started adding my pods in one by one (actually, 3 by 3...one by one would have taken too long).
Conclusion: localytics 4.3.1 has a bug in it somewhere. I downgraded to 4.3.0 and the problem went away.
I got a problem like this. My suggestion is that you should remove the version of 8.3 and download any old version from this link: https://developer.apple.com/download/more/
I hope that it will work.

weird error when trying to install ParseUI via CocoaPods

I'm trying to build an App using Parse as my backend and Xcode 7.0 & Swift 2. So in order to use PFQueryTableView, I need to use CocoaPods to install ParseUI first. I did this and used .xcworkspace to re-enter the project and then tried to compile and run it. But instantly I got this very nasty error:
ld: 823 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
These 2 lines are just the bottom 2 lines of the error messages, because there are a lot and they all start with something like:
duplicate symbol _OBJC_METACLASS_$_PFUserFileCodingLogic in:
or anything like that
I have many frameworks installed like Bolts, and it seems not a lot of people get this like me.
I had this same issue. I'd both installed Parse via Pods as well as by dragging the libraries into my Frameworks directory manually.
I removed the Pods directory and everything that said Pods from my app's build phases and it seemed to work out.

Resources