【问题标题】:Compiling React Native project with local fork - NDK_PROJECT_PATH使用本地 fork 编译 React Native 项目 - NDK_PROJECT_PATH
【发布时间】: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.mkjni/Android.mkjni/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


【解决方案1】:

我正在尝试为 Android 编译 React Native UIExplorer。我遇到了同样的问题。 然后我运行 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/r13b/build/core/build-local.mk:151: *** Android NDK: Aborting    .  Stop.

我的android-ndk版本是/android-ndk/r13b/,所以我下载了android-ndk-r10e。 我用最直接的方式:

$ cd /usr/local/Cellar/android-ndk/r13b 
$ rm -rf ./*
$ mv YourUnZipPath/android-ndk-r10e/* ./

然后它工作正常,我能够成功构建项目。

【讨论】:

    【解决方案2】:

    我认为问题出在android-ndk 版本上。我们需要使用 react-native documentation 指定的 ndk 版本。我尝试使用最新版本的 andrid-ndk。我无法构建项目,运行 react-native run-android 时遇到类似错误。

    然后我尝试使用android-ndk-r10e 版本。它工作正常,我能够成功构建项目。

    您还可能会发现thisreact-native github 问题讨论很有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-16
      • 2018-06-29
      • 2019-08-23
      • 1970-01-01
      • 2014-11-28
      • 1970-01-01
      • 2020-04-23
      • 1970-01-01
      相关资源
      最近更新 更多