Leo Yamamoto
02/24/2025, 8:02 AMdarwin_log_create
, maybe because it uses Kermit and they both define this symbol: [Kermit] [Canard]. (Full message in thread.)
1. I'm not sure why this only happens with release builds.
2. I'm not sure what changes might have happened in this library or in Kermit that would have made it start having this conflict.Leo Yamamoto
02/24/2025, 8:02 AM> Task :shared:linkReleaseFrameworkIosSimulatorArm64
e: Compilation failed: Linking globals named 'darwin_log_create': symbol multiply defined!
* Source files:
* Compiler version: 2.1.0
* Output kind: FRAMEWORK
e: java.lang.Error: Linking globals named 'darwin_log_create': symbol multiply defined!
at org.jetbrains.kotlin.backend.konan.llvm.DefaultLlvmDiagnosticHandler.handle(diagnosticReport.kt:26)
at org.jetbrains.kotlin.backend.konan.llvm.LlvmDiagnosticCollector.flush(diagnostics.kt:36)
at org.jetbrains.kotlin.backend.konan.llvm.LinkModulesKt.llvmLinkModules2(linkModules.kt:37)
at org.jetbrains.kotlin.backend.konan.CompilerOutputKt.linkAllDependencies(CompilerOutput.kt:140)
at org.jetbrains.kotlin.backend.konan.CompilerOutputKt.linkBitcodeDependencies(CompilerOutput.kt:177)
at org.jetbrains.kotlin.backend.konan.driver.phases.BitcodeKt.LinkBitcodeDependenciesPhase$lambda$8(Bitcode.kt:133)
kpgalligan
02/24/2025, 5:44 PMOSLogWriter
which appears to use the same name in cinterop as is used by Canard. Currently, the two libraries aren't compatible as a result. I'd never heard of Canard until this issue, but it looks like the PR to Kermit came pretty much from Canard, name and all. So, we'll have to investigate and see if renaming those cinterop functions will have any potential issues on release (probably not), then put out a new Kermit version.kpgalligan
02/24/2025, 5:44 PMkpgalligan
02/24/2025, 5:45 PMkpgalligan
02/24/2025, 5:47 PMkpgalligan
02/24/2025, 5:52 PMkpgalligan
02/24/2025, 5:57 PMLeo Yamamoto
02/24/2025, 6:02 PMSo, we'll have to investigate and see if renaming those cinterop functions will have any potential issues on release (probably not), then put out a new Kermit version.
https://github.com/touchlab/Kermit/issues/434Thank you so much! And to be clear, I wasn't blaming Kermit on this. I just wanted to figure out what was going on.
kpgalligan
02/25/2025, 12:36 AM