Hey all,
I’ve tried to create a library project which depends on firebase-kotlin-sdk and when building klib
gradlew :shared:build
it failed because of
> Task :shared:linkPodReleaseFrameworkIosArm64 FAILED
e: Compilation failed: Linking globals named 'kniprot_cocoapods_FirebaseAuth0_FIRUserInfo': symbol multiply defined!
* Source files:
* Compiler version: 2.1.21-RC
* Output kind: FRAMEWORK
e: java.lang.Error: Linking globals named 'kniprot_cocoapods_FirebaseAuth0_FIRUserInfo': symbol multiply defined!
I got it fixed by defining the following into cocoapods block:
cocoapods {
version = "10"
ios.deploymentTarget = libs.versions.ios.deploymentTarget.get()
framework {
baseName = "FirebaseFirestoreXXX"
isStatic = !enableFirebasePodsForTests
}
Ie. added
isStatic
whenever not running tests from Android Studio and renaming
baseName
to something else than `FirebaseFirestore`as I copied the configuration from the firebase-kotlin-sdk project.
This fixed it yesterday but today for whatever reason I’m back to the same error about symbol multiply defined. Any pointers would be helpful.
Running tests from Android Studio work fine. I can build an XCFramework fine, but klib fails again.
Any help would be appreciated, thanks.