Error after adding FirebaseFireStoreSwift-Beta with Swift Package Manager - firebase

I setup a new project using Firebase SDK and only get this error when I add FirebaseFirestoreSwift-Beta. I have it in other projects that was built before Mar-8th and have no issues running them but it won't work on any new projects. I have went back and watched videos to make sure I wasn't missing a step when installing. I am using Xcode 12.4
Is this an issue with the Beta or is there something I am missing on my end?

Many apologies, the issue was introduced by me.
It appears that symbol resolution has changed slightly in Swift between Xcode 12.4 and Xcode 13.
I have made a PR that fixes the compilation issue on Xcode 12.4 here:
https://github.com/firebase/firebase-ios-sdk/pull/9438
Until then, if possible, you can update to the latest version of Xcode.
If that is not possible, then if you use a package manager where you can make local edits, you can rename the variable data to something else (like d) to make it compile.
If you can't do that, then a more substantial workaround would be to fork the repository, check out the release tag, create a new branch and fix the error, then pointing your package manager to you own branch including the fix.
Another solution is of course to stay on 8.12 of Firebase until the PR above is merged and released.

Related

iOS Realm: file does not start with MH_MAGIC[_64], fat file, but missing compatible architecture (have 'x86_64,i386', need 'x86_64'))

I have updated mac to 11.6 and xcode to 13.0. Realm could not compile so I updated it with carthage to v10.15.1. Now I get this runtime error just after the app launch:
Library not loaded: #rpath/Realm.framework/Realm
Referenced from: /Users/username/Library/Developer/Xcode/DerivedData/appname/Build/Products/Debug-iphonesimulator/RealmSwift.framework/RealmSwift
Reason: tried: '/Users/username/Library/Developer/Xcode/DerivedData/appname/Build/Products/Debug-iphonesimulator/Realm.framework/Realm' (file does not start with MH_MAGIC[_64], file does not start with MH_MAGIC[_64], fat file, but missing compatible architecture (have 'x86_64,i386', need 'x86_64')), '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/swift/Realm.framework/Realm' (no such file), '/usr/lib/swift/Realm.framework/Realm' (no such file), '/Users/username/Library/Developer/CoreSimulator/Devices/33E61712-D8A9-4D7E-A260-5C096BE08A82/data/Containers/Bundle/Application/AC700919-F431-446F-8BEF-FF8D8E5F5BF9/appname.a
I guess the key part here is file does not start with MH_MAGIC[_64], but I could not find anything useful about the error.
I tried embedding the library and turning off the embedding, does not affect anything.
Realm has 3 targets configured to be built with Carthage (Realm, Realm iOS Static and RealmSwift)
XCode 13 deprecated a setting for building targets in a manually set order which leads the first 2 targets to be built in a non deterministic order (the 3rd one is always last as it depends on the 1st one). The order and the frequency of it changing seems to be random (it might depend on the specific XCode version)
When 'Realm' is build before 'Realm iOS Static', the fat framework replaces the one in the xcframework which leads to that error. In the other case, it's the correct one that's built second and overrides the wrong one.
I guess the solution (apart from upgrading Realm) would be to remove the target 'Realm iOS Static' from the project but it's not straightforward to do with Carthage except by forking Realm
The latest version of realm is v10.32.0. xcode 14.1 is also out.
You need to update your toolset.
The latest upgrade realm version 10.32.0 is compatible with XCode 13.1 and above. If you use the legacy build system, migrate it to the latest one and clean the derivable folder before rebuilding the code. Most of the time derivable keeps track of the older version files and makes conflicts once you update the project tools. Hope this will help

Xamarin.Firebase.FirebaseDynamicLinks.instance returns NULL is Xamarin.Firebase.lid is used

I'm trying to use Xamarin.Firebase.Dynamic.Links, but I get a NULL object whenever the Xamarin.Firebase.lid package is included in the project. However, I need to use other packages that rely on Xamarin.Firebase.lid, and so the solution isn't as simple as just NOT USING it.
The project is built against MONOANDROID 9.0, and all of the installed packages are the MOST UP-TO-DATE as of Sep 20, 2019.
The default FirebaseApp object instance is valid (non-null), so all of my account information in google-services.json seems to be working as expected.
I've proven that the issue disappears the moment I remove Xamarin.Firebase.lid from the packages, and it returns the moment I put this package back in.
I of course hadn't expected this failure to tie so closely to another package that is ALSO from Google and meant for use with Firebase.
Has anyone else encountered this problem? If so, how did you work around it?
I eventually found that the ONLY way to fix this was to build against MONOANDROID 8.0. You can still TARGET Android 9.0 in your app, but all of your packages must be the older ones that work on MONOANDROID 8.0. If the package doesn't care, you can use the most recent of those.

Meteor Project not supported

I am trying to run a project on meteor but getting this error in the command line-
this project uses Meteor1.0.2.1, which isn't available on Windows. To
work with is app on all supported platforms, use ,meteor update
--release METEOR#1.1.0.2 to pin this app to the newest Windows-compatible release.
I have tried updating to which I am getting the error message
while checking for meteorhacks:kadira-binary-deps#1.2.1:error: No
compatible binary build found for this package. Contact the package
author and ask them to publish it for your platform.
I tried updating this to which i was brought back to the first error message.
Does anyone know how I can run this meteor package? It is sparrow-finance to be specific.
Regards
Chris
The answer is simply remove the kadira package which you can do by editing the packages file in .meteor.
But, kadira is really useful. So what I'd suggest is to set up meteor environments. Meteor cookbook has a good example of this - https://github.com/awatson1978/meteor-cookbook/blob/master/cookbook/environment-detection.md .
If your environment is anything other than local, use kadira, else don't use it.

How to fix XCode 4 error: app depends on itself. This target might include its own product...?

How to fix XCode 4 build and clean error: "XXX.app depends on itself. This target might include its own product"...?
Upgraded my dev environment to latest Xcode 4.
Opened an existing project previously built and cleaned in XCode 3.x.x.
Attempted to clean: Clean failed with the same error "target might include..."
Attempted to build for debug on simulator. Build failed with the same error.
I've been stumped by this one. The responses to correct this have all been around Xcode 3.x.x
I thought others might run into this and want an answer.
After much gnashing of teeth, I found an answer (there may be other more elegant ways to fix this):
Go to Project Navigator.
Scroll down the list of Classes, Resources and find the PRODUCT group. The actual product in the group may display in red if you previously cleaned it in XCode 3.x.x.
DELETE the entire PRODUCT group.
You can then re-run your clean or build action.
Hope this helps others and prevents alot of frustration.
Click Products/***.app file.
and you can see the file info in Utilities Window.
Uncheck Target! That's it!
Just delete product.app from Copy Bundle resources. Its under Targets->Build Phases->Copy Bundle Resources. Also make sure to create a snapshot of a working project before making any significant changes. Happy Coding...

Opening xcode 3.2 VST project in xcode 4

I recently started a project using Xcode 3.2 and the vstsdk 2.4 and then I purchased Xcode 4. When I open the project within Xcode 4 I get the "missing base SDK" error which I can fix by changing that to either Mac OS X 10.5 or 10.6. After this though my .vst file is still red in the file tree. I have also tried to delete the file and re-add it but when I do it adds it as a folder instead of a .vst file. Without this I cannot build the project as the target is missing.
Any ideas?
Cheers.
The file "yourplugin.vst" (or whatever it's named) in the Xcode group is actually the product's output target, so you shouldn't delete it. If it's red, that simply means that you haven't built the target yet.
If you are using source control, I would advise reverting back to the version before you deleted the .vst file and trying to build from that point. If you're not (and why aren't you?! ;) ), then you can try re-creating the target manually.
I have also written a tutorial on how to make a VST plugin in Xcode which you might find useful. I will be updating this for Xcode 4 soon, so if you run into any problems, post a comment there.

Resources