After fixing the issue above, I ran into another r...
# multiplatform
d
After fixing the issue above, I ran into another related issue. when running the build task, I was getting
ld: framework not found OCMockitoIOS
which is a linker error. Updated my gradle script with linker options in the framework block like:
Copy code
framework {
      embedBitcode("disable")
      def productsDir = new File("").absolutePath
       linkerOpts = ["-F${productsDir}/common/libs"]
}
which points to the directory where that framework is located. This change gets me past the part where it failed before, but throws a new error
error: compilation failed: Collection has more than one element.
Am I using the wrong linker options or is this a bug in compiler?
Also, the stacktrace starts off like....
Copy code
exception: java.lang.IllegalArgumentException: Collection has more than one element.
	at kotlin.collections.CollectionsKt___CollectionsKt.single(_Collections.kt:504)
	at org.jetbrains.kotlin.backend.konan.ObjCInteropKt.objCMethodInfoByBridge(ObjCInterop.kt:89)
	at org.jetbrains.kotlin.backend.konan.ObjCInteropKt.decodeObjCMethodAnnotation(ObjCInterop.kt:83)
	at org.jetbrains.kotlin.backend.konan.ObjCInteropKt.getObjCMethodInfo(ObjCInterop.kt:105)
	at org.jetbrains.kotlin.backend.konan.ObjCInteropKt.getExternalObjCMethodInfo(ObjCInterop.kt:115)
	at org.jetbrains.kotlin.backend.konan.lower.InteropLoweringPart1.visitCall(InteropLowering.kt:620)
.....
.....
s
Looks more like a misconfiguration. Is it possible that your
test
compilation gets the same dependency twice?
d
@svyatoslav.scherbina don't think so, unless setting cinterops under
compilations.all{...}
will do that.
found the underlying issue. referenced you in another thread