在 CentOS Linux 系统上安装 Android NDK (Native Development Kit) 是进行 Android 底层开发、性能优化或交叉编译 C/C++ 代码库的必要步骤,NDK 允许开发者使用原生代码,从而实现对硬件性能的最大化利用,或复用已有的 C/C++ 代码,本文将详细介绍在 CentOS 环境下下载、安装、配置及验证 NDK 的完整流程,确保您能够顺利搭建起原生开发环境。

准备工作
在开始安装之前,请确保您的 CentOS 系统已满足以下基本条件,这些先决条件是保证安装过程顺利无误的基础。
| 项目 | 要求 | 说明 |
|---|---|---|
| 操作系统 | CentOS 7/8 | 推荐使用较新版本以获得更好的兼容性和软件支持 |
| 权限 | sudo 权限 | 用于在系统目录(如 /opt)下创建文件夹和修改配置 |
| 核心工具 | wget, unzip | 用于从网络下载 NDK 压缩包并解压 |
| Java 环境 | JDK 8 或更高版本 | 部分旧的 NDK 构建脚本或工具可能依赖 Java 运行时 |
您可以通过以下命令检查并安装必要的工具:
sudo yum update -y sudo yum install -y wget unzip
对于 Java 环境,可以通过 yum install java-1.8.0-openjdk-devel 安装 OpenJDK 8。
第一步:下载 Android NDK
我们需要从 Android 官方开发者网站下载适用于 Linux 的 NDK 软件包,Google 会持续更新 NDK 版本,建议访问 Android NDK 官方下载页面 获取最新的稳定版。
在下载页面中,找到适用于 Linux 的版本(通常以 -linux.zip ,您可以直接在浏览器中下载,然后通过 FTP 或其他方式上传到 CentOS 服务器,也可以直接在 CentOS 终端中使用 wget 命令下载。
以下是一个下载特定版本(r25c)的示例命令,请根据实际情况替换为最新版本的链接:
wget https://dl.google.com/android/repository/android-ndk-r25c-linux.zip
第二步:解压与安装
推荐将 NDK 安装在 /opt 目录下,这是一个在 Linux 系统中用于存放可选第三方软件的标准位置,便于系统级管理和多用户访问。
创建安装目录:
sudo mkdir -p /opt/android-ndk
解压 NDK 包:
将下载的.zip文件解压到刚刚创建的目录中。sudo unzip android-ndk-r25c-linux.zip -d /opt/android-ndk
解压后,会在
/opt/android-ndk目录下生成一个类似android-ndk-r25c的文件夹。简化路径(可选但推荐):
为了方便后续版本管理和配置,可以为该版本创建一个更简洁的符号链接或直接重命名文件夹,这里我们以重命名为例:
sudo mv /opt/android-ndk/android-ndk-r25c /opt/android-ndk/ndk-r25c
这样,NDK 的安装路径就变成了
/opt/android-ndk/ndk-r25c。
第三步:配置环境变量
这是最关键的一步,需要将 NDK 的路径添加到系统的环境变量中,以便在任何终端会话中都能直接调用 NDK 的工具。
我们将通过编辑当前用户的 ~/.bashrc 文件来完成配置,这样做只会对当前用户生效,是一种安全且推荐的做法。
打开
.bashrc文件:vi ~/.bashrc
(您可以使用任何您熟悉的文本编辑器,如
nano或gedit)在文件末尾添加以下内容:
# Android NDK Environment Variables export ANDROID_NDK_ROOT=/opt/android-ndk/ndk-r25c export PATH=$PATH:$ANDROID_NDK_ROOT
说明:
ANDROID_NDK_ROOT:这是一个关键的环境变量,许多构建脚本和工具(如 CMake)会依赖它来定位 NDK 的安装位置。PATH:将 NDK 的根目录添加到PATH中,使得我们可以直接执行ndk-build、ndk-which等命令。
使配置生效:
保存并关闭文件后,执行以下命令使修改立即生效,或者重新打开一个新的终端窗口。source ~/.bashrc
第四步:验证安装
配置完成后,我们需要验证 NDK 是否已成功安装并配置正确。
检查环境变量:
echo $ANDROID_NDK_ROOT
该命令应该输出我们之前设置的路径:
/opt/android-ndk/ndk-r25c。
检查 NDK 工具:
较新版本的 NDK 主要通过 CMake 和 Ninja 进行构建,但ndk-build依然可用,您可以尝试查看其版本来验证。ndk-build -v
如果安装成功,终端会显示
GNU Make的版本信息,这表明ndk-build脚本可以正常找到并执行。列出 NDK 目录内容:
ls $ANDROID_NDK_ROOT
您应该能看到
toolchains,build,sources等多个文件夹,这说明 NDK 文件是完整的。
至此,您已经在 CentOS Linux 上成功安装并配置了 Android NDK,可以开始您的原生开发之旅了。
相关问答 (FAQs)
问题 1:ANDROID_NDK_ROOT 和 NDK_HOME 有什么区别,我应该设置哪一个?
解答:ANDROID_NDK_ROOT 和 NDK_HOME 这两个环境变量在功能上是等效的,都用于指向 NDK 的安装目录。ANDROID_NDK_ROOT 是 Google 官方文档和现代构建工具链(特别是 CMake)中更推荐和广泛使用的变量名,为了保持与官方标准和最新工具的一致性,强烈建议您设置并使用 ANDROID_NDK_ROOT,在一些旧的构建脚本或第三方项目中,您可能仍会看到对 NDK_HOME 的引用,如果遇到这种情况,同时设置 NDK_HOME 指向相同路径也可以作为一种兼容性解决方案。
问题 2:如何将已安装的 NDK 更新到最新的版本?
解答:更新 NDK 是一个非常简单且安全的过程,不会影响旧版本,推荐的做法是并行安装多个版本,然后通过修改环境变量来切换,具体步骤如下:
- 按照本文的第一步和第二步,下载并解压新版本的 NDK 到一个新的目录,
/opt/android-ndk/ndk-r26b。 - 打开
~/.bashrc文件,将ANDROID_NDK_ROOT的值修改为新版本的路径:export ANDROID_NDK_ROOT=/opt/android-ndk/ndk-r26b
- 保存文件并执行
source ~/.bashrc使配置生效。 - 通过
echo $ANDROID_NDK_ROOT和ndk-build -v等命令验证是否已切换到新版本。
这种方法的好处是,如果新版本出现兼容性问题,您可以随时将ANDROID_NDK_ROOT改回旧版本的路径,快速回滚,保证了开发环境的稳定性。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复