Hi guys, i am using separate module for cocoapods ...
# compose-ios
s
Hi guys, i am using separate module for cocoapods for using in ios that is iosEntryPoint module and in that module i am using shared module for using in ios side, due to public symbol IR issue: https://github.com/JetBrains/compose-multiplatform/issues/3175 if i use it directly in ios. But now in ios build, i m getting following error:
Copy code
org.jetbrains.compose.resources.MissingResourceException: Missing resource with path: add_post_icon.png
So if i am using a separate module (a kind of wrapper over shared module) for using in ios side, what changes do i have to make related to resources? Its the flow now: iosApp -> iosEntryPoint -> shared
this is my gradle build file in iosEntryPoint module:
Copy code
plugins {
    kotlin("multiplatform")
    kotlin("native.cocoapods")
}

kotlin {
    iosX64()
    iosArm64()
    iosSimulatorArm64()

    cocoapods {
        version = "1.0.0"
        summary = "Some description for the Shared Module"
        homepage = "Link to the Shared Module homepage"
        ios.deploymentTarget = "14.1"
        podfile = project.file("../iosApp/Podfile")
        framework {
            baseName = "iosEntryPoint"
            isStatic = true
        }
        extraSpecAttributes["resources"] = "['src/commonMain/resources/**', 'src/iosMain/resources/**']"
    }

    sourceSets {
        val iosX64Main by getting
        val iosArm64Main by getting
        val iosSimulatorArm64Main by getting

        val iosMain by creating {
            iosX64Main.dependsOn(this)
            iosArm64Main.dependsOn(this)
            iosSimulatorArm64Main.dependsOn(this)

            dependencies {
                implementation(project(":shared"))
            }
        }

    }
}
d
Hello! Maybe you should call
pod install
on your iOS Application project dir with cocoapods
s
Hi thanx @Dima Avdeev, actually i tried that as well, but it didnt worked, so i reverted back to making required classes internal whenever i face public symbol IR issue, so now i am not using separate module, but directly using shared module.