Я пытаюсь использовать фреймворк cocoapods в проекте Kotlin Multiplatform.
Итак, я
- добавлен фреймворк в файл Pods.
- запустил установку pod.
- создано
.def
файл
- добавлено
cinterop
config в build.gradle
./gradlew cinteropFirebaseIos
успешно выполняется. Он генерирует .klib
, поэтому я могу видеть классы в коде котлина.
Но когда я пытаюсь запустить iOS-приложение, сборка завершается с сообщением:
Отображение последних сообщений
> Задача: app: linkDebugFrameworkIos
ld: фреймворк не найден. FirebaseDatabase
/ Applications / Xcode.app / Contents / Developer / Toolchains / XcodeDefault.xctoolchain / usr / bin / ld при вызове сообщили об ошибках
Вот мой конфиг в build.gradle
fromPreset(presets.iosX64, 'ios') {
compilations.main {
outputKinds('FRAMEWORK')
cinterops {
firebase {
def proj = "${System.getProperty("user.home")}/Projects/kmpp"
def pods = "${proj}/iosApp/Pods"
defFile "${proj}/app/src/iosMain/c_interop/libfirebase.def"
includeDirs "${pods}/Firebase",
"${pods}/Firebase/CoreOnly/Sources",
"${pods}/FirebaseAnalytics/Frameworks/FirebaseAnalytics.framework/Headers"
}
}
}
}
вот мой .def
файл:
language = Objective-C
headers = /Users/oleg/Projects/klug/crckalculator/iosApp/Pods/FirebaseCore/Firebase/Core/Public/FIRApp.h /Users/oleg/Projects/klug/crckalculator/iosApp/Pods/FirebaseDatabase/Firebase/Database/Public/FIRDatabase.h /Users/oleg/Projects/klug/crckalculator/iosApp/Pods/FirebaseCore/Firebase/Core/Public/FirebaseCore.h
compilerOpts = -framework FirebaseDatabase
linkerOpts = -framework FirebaseDatabase
Как я могу понять, что не так? Я что-то пропустил в файле .def
? В build.gradle
?