ndk的注意事項

從開源網站下載的源碼,須要本身編譯c源碼成so類庫。當時用Android studio 運行老是報錯
」finished with non-zero exit value 2"
報錯定位到build.gradle文件裏負責編譯app

task ndkBuild(type: Exec, description: 'Compile JNI source via NDK') {
    println('executing ndkBuild')
    def ndkBuildPath = getNdkBuildPath();
    commandLine ndkBuildPath, '-j8', '-C', file('src/main').absolutePath
}

其實就是執行Ndkbuild.cmd這個命令。gradle

網上搜了好多沒看懂網站

 

最後最簡單的辦法,就到Aplication.mk所在文件夾,手動在命令行裏調用Ndkbuild進行編譯,看到確切的報錯提示了。application.mk文件裏APP_ABI字段有問題,這個ABI就是編譯目標平臺。由於開源文件原先發布開發環境版本較早,一些ABI已經不支持了。刪掉就能夠了。ui

APP_ABI :=  armeabi-v7a arm64-v8a x86  #armeabi mips

其中#是註釋掉的內容 arm64-v8a是我後來添加的。spa

最終,在Android studio裏編譯執行就沒有問題了。命令行

相關文章
相關標籤/搜索