正点原子 RK3562 Android14 Ubuntu 编译 SDK 环境准备:依赖、repo 与 Swap 配置一次搞定

在进行 Android、Linux SDK 或嵌入式 BSP 编译前,Ubuntu 主机环境是否完整,会直接影响后续源码同步和工程编译。本文整理了基础依赖安装、repo 工具配置以及 Swap 容量扩展三个步骤,适合在新搭建编译服务器或虚拟机环境时参考使用。

正点原子RK3562J开发板瑞芯微Linux开发板ARM工业控制AI人工智能

RK3562 Android14 Ubuntu 编译 SDK 环境准备:依赖、repo 与 Swap 配置一次搞定

一、安装基础依赖软件包

在开始源码同步和编译前,建议先更新 Ubuntu 软件源,并安装编译过程中常用的基础工具链、库文件以及设备树相关工具。

执行以下命令:

bash 复制代码
sudo apt-get update

然后安装常用依赖:

bash 复制代码
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib \
g++-multilib libc6-dev-i386 lib32ncurses5-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev \
libxml2-utils xsltproc unzip python-pyelftools python3-pyelftools device-tree-compiler libfdt-dev \
libfdt1 libssl-dev liblz4-tool python-dev libncurses5 make

部分内核或 BSP 编译过程中,还可能会用到 libelf-dev 和 dwarves,建议一并安装:

bash 复制代码
sudo apt-get install libelf-dev
sudo apt-get install dwarves

其中,libelf-dev 常用于内核相关工具编译,dwarves 则常用于 BTF、调试信息等相关功能生成。如果缺失,后续编译内核时可能会出现依赖报错。

二、安装 repo 工具

很多 Android SDK 或大型嵌入式 Linux SDK 都采用 repo 管理多仓库源码,所以需要先安装 repo 工具。

创建本地工具目录:

bash 复制代码
mkdir ~/bin

将该目录加入环境变量:

bash 复制代码
export PATH=~/bin:$PATH

然后从清华源下载 repo:

bash 复制代码
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o ~/bin/repo

添加可执行权限:

bash 复制代码
chmod a+x ~/bin/repo

配置完成后,可以执行下面命令确认 repo 是否可用:

bash 复制代码
repo --version

如果能够正常输出版本信息,说明 repo 工具已经安装完成。

三、增加 Swap 容量

大型工程编译时,对内存要求比较高。如果主机内存较小,容易在编译过程中出现进程被杀、链接失败、内存不足等问题。

为了提高编译稳定性,可以额外增加一个 8GB 的 Swap 文件。

创建 Swap 文件:

bash 复制代码
sudo fallocate -l 8G /swapfile2

设置文件权限:

bash 复制代码
sudo chmod 600 /swapfile2

格式化为 Swap:

bash 复制代码
sudo mkswap /swapfile2

启用 Swap:

bash 复制代码
sudo swapon /swapfile2

启用后,可以通过以下命令查看当前 Swap 状态:

bash 复制代码
free -h

或者:

bash 复制代码
swapon --show

如果能看到 /swapfile2,说明新的 Swap 已经生效。

相关推荐
SelectDB15 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
AlfredZhao16 小时前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3102 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
A小辣椒4 天前
TShark:Wireshark CLI 功能
linux
A小辣椒4 天前
TShark:基础知识
linux
AlfredZhao4 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao5 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi
用户9718356334665 天前
银河麒麟 KY10 申威(SW64) 安装 nginx-1.16.1-2.p01.ky10.sw_64.rpm 详细步骤
linux