🧙
Codemagicで「NDK not configured」が出た場合の対処方法
Codemagicで「NDK not configured」が出た場合の対処方法
発端
Flutterでpdf_render: ^1.3.0
を入れてビルドしたら、下記のエラーが出た
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':pdf_render'.
> org.gradle.api.InvalidUserDataException: NDK not configured. Download it with SDK manager. Preferred NDK version is '21.4.7075529'.
Android Studioでの対処方法
①NDKがないと言われてるので、Preferences > Appearance & Behavior > System Settings > Android SDK
でSDK Tools
からNDKをインストールする
※ダイアログにあるShow Package Details
にチェックを入れると細かいバージョンを指定してインストールできる
②上記でビルドしてみると今度は下記のエラーが出る
FAILURE: Build failed with an exception.
* What went wrong:
A problem occurred configuring project ':pdf_render'.
> com.android.builder.errors.EvalIssueException: CMake '3.10.2' was not found in SDK, PATH, or by cmake.dir property.
③CMakeが今度は足りないので、NDKをインストールした画面から今度はCMakeの3.10.2
をインストール
④ビルドする
Codemagicでエラーになった
AndroidStudioでNDKを入れて動いたけど、Codemagicってワンチャンよしなに解決してくれないかなと淡い期待でビルドしてみたら、やっぱりビルドが通らず同じエラーになった。
Codemagicでの対処方法
@tamamu79さんの参考記事が大変助かりました。
Codemagicで利用されてるバージョン
Build machine and software versions
(2023-03-29時点)
やったこと
①NDKを入れる対象を把握するr21e
が必要)
②CodemagicのPre-build script
で下記のスクリプトを追加
echo "Installing NDK"
curl -o $FCI_BUILD_DIR/ndk.zip https://dl.google.com/android/repository/android-ndk-r21e-darwin-x86_64.zip\?hl\=ja
unzip -o $FCI_BUILD_DIR/ndk.zip -d $FCI_BUILD_DIR
echo "ndk.dir=$FCI_BUILD_DIR/android-ndk-r21e" > "$FCI_BUILD_DIR/android/local.properties"
③ビルドする
Discussion