【发布时间】:2017-03-06 04:29:26
【问题描述】:
我正在尝试使用 react-native 的本地分支编译我的 React Native Android 项目。我已按照building from source 指南完成所有步骤(不使用 Android Studio)。
当我尝试运行react-native run-android(正常从项目根目录)时,我得到:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':ReactAndroid:buildReactNdkLib'.
> Process 'command '/usr/local/opt/android-ndk/ndk-build'' finished with non-zero exit value 2
当我运行ndk-build(从项目根目录)时,我得到:
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
/usr/local/Cellar/android-ndk/r12b/build/core/build-local.mk:151: *** Android NDK: Aborting . Stop.
Another SO thread 指出我从./android/app/src 运行ndk-build 的方向并在那里创建一个jni 目录(我没有),但我不确定如何获取或创建jni/Android.mk正确,或者如果这甚至可以帮助我。我已经尝试使用该 SO 问题中描述的设置创建具有内容 APP_BUILD_SCRIPT := Android.mk 和 jni/Android.mk 的 jni/Application.mk。从android/app/src 运行ndk-build 退出并出现以下错误:
Android NDK: Your APP_BUILD_SCRIPT points to an unknown file: Android.mk
/usr/local/Cellar/android-ndk/r12b/build/core/add-application.mk:198: *** Android NDK: Aborting... . Stop.
我使用 Homebrew 安装了 Android SDK 和 NDK,并且我有以下导出:
ANDROID_HOME=/usr/local/opt/android-sdk
ANDROID_SDK=/usr/local/opt/android-sdk
ANDROID_NDK=/usr/local/opt/android-ndk
ANDROID_NDK_HOME=/usr/local/opt/android-ndk
我觉得我很接近了,但不知道如何继续。
【问题讨论】:
-
不,您不能从命令行为 react-native 运行 ndk-build。它的 gradle 脚本下载并配置了很多依赖项,包括 boost。你可以运行
react-native --debug run-android来了解更多关于 ':ReactAndroid:buildReactNdkLib' 失败的信息。我建议打开issue on GitHub。
标签: android android-ndk react-native