如何在 OSX for Android studio 中设置 NDK 构建路径

Posted

技术标签:

【中文标题】如何在 OSX for Android studio 中设置 NDK 构建路径【英文标题】:How to set NDK Build path in OSX for Android studio 【发布时间】:2015-06-29 23:34:47 【问题描述】:

我使用名为 Environment Variables 的 mac osx 应用程序将 android_NDK_HOME 设置为 /Users/Shajilshocker/Documents/Android/NDK/android-ndk-r10b

我已经确认它在终端中正确设置了路径

echo $ANDROID_NDK_HOME

但是当我在调用 ndk-build 的 Android Studio 项目中运行 shell 文件时,我收到以下错误

ndk-build: command not found

如何确保 ndk-build 在您的构建路径中?

如何在我的构建路径中设置 ndk-build ?

感谢您的帮助

【问题讨论】:

两件事:你确定这个目录是正确的吗? ndk-build 直接在这个目录下。其次,你到底在运行什么 shell 文件? 我正在尝试运行这个文件github.com/schwabe/ics-open***/blob/master/main/misc/… 【参考方案1】:

嗯,这实际上不足以让系统知道路径。您必须将此路径添加到PATH 系统变量。在您的情况下,您所要做的就是将以下行添加到您的终端配置文件(应该在您的主目录下,如果您保留默认终端,则命名为.bashrc,完整路径:~/.bashrc):

export PATH=$PATH:/Users/Shajilshocker/Documents/Android/NDK/android-ndk-r10b

这一行实际上是将 Android NDK 目录的路径添加到 PATH 变量中。您导出一个名为 PATH 的变量及其当前内容以及 NDK 的目录。

一步一步:

进入主目录 编辑.bashrc 添加我上面显示的行 保存,退出,然后重启 bash(你只需输入bash,然后回车)

【讨论】:

感谢您回答我的问题我有一些疑问...考虑到我已经卸载了应用程序环境变量...您能给我从开始的步骤...我的 NDK 构建器位于 /Users/ Shajilshocker/Documents/Android/NDK/android-ndk-r10b ..现在我已经打开了终端接下来的步骤是什么? ~/ 表示进入主目录编辑.bashrc ..当我尝试~/ .bashrc 时,我没有得到这样的文件或目录。 后来我发现没有/bashrc 使用这个命令 ls -a 显示有一个.bash_profile.bash_history 所以我想让我们编辑它`sudo ~/.bash_profile` 但是这个是我得到的`command not found` Ref:***.com/a/19664882/3856173 ..希望你能帮助我 不,您必须编辑此文件,这不是您必须执行的命令。例如,您应该输入nano .bashrc。尝试创建文件,添加此行,然后重试。如果它不起作用,请添加此answer 中提到的行以使其起作用。 请注意,如果您从 Android Studio 的内置 SDK 管理器/工具安装 NDK,则路径将为 /Users/_username_/Library/Android/sdk/ndk-bundle【参考方案2】:

cd 到你必须设置的路径。

进入终端echo "export PATH=$PATH:$ANDROID_NDK_HOME" | sudo tee -a /etc/profile

【讨论】:

系统重启后,我必须再次这样做。 >> sudo file 语法无效。但是,您可以使用 sudo tee -a 来做同样的事情。【参考方案3】:

对于 mac,请使用:使用文本编辑器打开您的 .bash_profile 文件。 .bash_profile 默认位于主目录中。例如 /Users/john

假设是:您已将 android sdk 和 ndk 下载到 /User/john/Android 或者您可以通过转到 Android Studio 找到路径

项目结构> SDK位置,注意Android SDK位置&Android NDK位置

export ANDROID_SDK=/Users/john/Android/sdk
export ANDROID_NDK=/Users/john/Android/sdk/ndk-bundle
export PATH="$PATH:$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$ANDROID_NDK"

然后将以上行保存到您的 .bash_profile 文件中。关闭它并尝试在终端上输入它

ndk-build

如果响应如下,你就可以走了

Android NDK: Could not find application project directory !    
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.    
/Users/john/Android/sdk/ndk-bundle/build/core/build-local.mk:143: ***   Android NDK: Aborting    .  Stop.

这里假设你已经将你的 android sdk 下载到 /Users/john/Android

【讨论】:

嗨@James Bond MAC OS 上的 .bashrc 文件在哪里。我去主目录>去用户> Maidul ISlam>没有.bashrc可见文件。我怎么能找到那个。请告诉我。 joshstaiger.org/archives/2005/07/bash_profile_vs.html上面的链接可能有帮助 Man...ura 天才.. 它可以工作.. 顺便说一下所有的跟踪者,如果它不起作用,则在更改 bash_profile 后注销并登录...并确保 ndk 目录在sdk内。它为我提供了几个星期来实现这一事实的工具【参考方案4】:

如果这对任何人都有帮助,我按照android.com NDK webpage 上的说明在 MacOS 上使用 Android Studio 安装了 Android NDK:我选择了 Tools --> Android --> SDK Manager,然后选择了 NDK。 Android Studio 然后将下载的文件安装在:

/Users/user.name/Library/Android/sdk/

该目录与 Android Studio 内的 SDK 管理器窗口中列出的目录相同。在该目录下是另一个目录ndk-bundle,其中包含所有 NDK 工具。

因此,我将其添加到我的路径中:

/Users/user.name/Library/Android/sdk/ndk-bundle/

【讨论】:

以上是关于如何在 OSX for Android studio 中设置 NDK 构建路径的主要内容,如果未能解决你的问题,请参考以下文章

Study for Test

倒数三天 | Android Study Jam 提交小测赢好礼

Android Study 玩转百度ocr身份证识别不是梦~

The study for the template

Android Study Jam 倒计时:最后一周 提交小测赢好礼

Android Study Jam 倒计时:最后一周 提交小测赢好礼