2. 开发环境总览
说实话,搭建开发环境这件事,看着简单,但坑是真不少。我见过太多新手一上来就急着写代码,结果编译环境配了三天还没跑通。嗯,咱们先把地基打牢。
这一章,我会带你从零开始,在 Ubuntu 22.04 上搭好一套完整的瑞芯微 HAL 开发环境。说白了,就是让你的电脑能编译、能下载、能调试。
2.1 为什么选 Ubuntu 22.04?
你可能要问:为什么非得用 Ubuntu?我用 Windows 不行吗?
我个人习惯用 Ubuntu 做嵌入式开发,原因有三:
- 工具链原生支持:GCC、Make、CMake 这些在 Linux 下就是亲儿子,安装方便,兼容性好
- 瑞芯微官方 SDK 基于 Ubuntu:你去看 Rockchip 的文档,几乎全是 Ubuntu 环境下的操作
- 驱动调试方便:串口、USB、网络调试,Linux 下比 Windows 省心太多
至于版本,我建议用 Ubuntu 22.04 LTS。为什么?因为 20.04 的 Python 版本太老,24.04 又太新,有些工具还没适配。22.04 刚刚好,稳定又够用。
核心观点:别在 Windows 上折腾 WSL 或者虚拟机了,直接装双系统或者用一台 Linux 主机,省下的时间够你写好几个驱动。
2.2 系统安装与基础配置
安装过程我就不啰嗦了,网上教程一大堆。我只说几个关键点:
- 磁盘分区:建议给根目录至少 100GB,因为 SDK 下载下来就几十个 G,编译还会产生大量中间文件
- 换源:安装完第一件事,把 apt 源换成国内的(清华、阿里、中科大都行),不然下载速度会让你怀疑人生
- SSH 服务:如果你用远程开发,记得装 openssh-server,方便后面用 VS Code Remote 连接
小技巧:我个人习惯装完系统先跑一遍 sudo apt update && sudo apt upgrade -y,把系统更新到最新,避免后面因为依赖版本问题报错。
2.3 必要工具链安装
好,系统准备好了,咱们开始装工具。下面这几个,一个都不能少。
2.3.1 Git
Git 是版本管理的基石,不用多说。安装很简单:
sudo apt install git -y
git --version # 验证安装
装完之后,建议配一下全局信息:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
为什么要配?因为后面用 Repo 下载代码时,Git 会用到这些信息。我曾经因为没配,导致 repo sync 报错,查了半天才发现是这个问题。
2.3.2 Repo
Repo 是 Google 出的一个工具,专门用来管理多 Git 仓库的项目。瑞芯微的 SDK 就是这种结构——一个主仓库下面挂了几十个子仓库。
安装 Repo 有两种方式:
# 方式一:官方推荐(但国内可能慢)
mkdir -p ~/bin
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
# 方式二:国内镜像(我推荐这个)
mkdir -p ~/bin
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
chmod a+x ~/bin/repo
记得把 ~/bin 加到 PATH 里:
echo 'export PATH=$PATH:~/bin' >> ~/.bashrc
source ~/.bashrc
避坑指南:我曾经在 Ubuntu 20.04 上遇到过 Repo 因为 Python 版本问题跑不起来。所以一定要确保你的 Python 版本 >= 3.6。后面我们会装 Python3,顺序别搞反了。
2.3.3 Python3 与 pip
Python3 在 Ubuntu 22.04 上是预装的,但 pip 需要手动装:
sudo apt install python3 python3-pip -y
python3 --version # 确认版本 >= 3.8
装完之后,建议把 pip 源也换成国内的:
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
为什么要换?你想想看,后面编译脚本、打包工具很多都是 Python 写的,下载依赖包如果从国外源拉,那个速度...嗯,你懂的。
2.3.4 Make
Make 是 Linux 下最经典的构建工具。Ubuntu 22.04 默认没装,需要手动安装:
sudo apt install make -y
make --version # 验证安装
这里有个细节:Make 的版本最好 >= 4.3。为什么?因为瑞芯微的某些 Makefile 用到了 4.0 之后才支持的特性。22.04 自带的版本是 4.3,刚好满足。
2.3.5 CMake
CMake 是跨平台的构建工具,HAL 层很多模块都用它来管理编译。安装命令:
sudo apt install cmake -y
cmake --version # 验证安装
我个人建议装 CMake 3.22 以上版本。如果你用 apt 装的版本太低,可以手动编译安装:
wget https://github.com/Kitware/CMake/releases/download/v3.26.0/cmake-3.26.0.tar.gz
tar -xzf cmake-3.26.0.tar.gz
cd cmake-3.26.0
./bootstrap && make && sudo make install
不过说实话,对于咱们这个课程,apt 装的版本完全够用,不用折腾。
2.4 环境验证
工具都装完了,咱们来验证一下。写个简单的 C 程序,用 CMake 编译:
# 创建测试目录
mkdir ~/test_env && cd ~/test_env
# 写个 main.c
cat > main.c << EOF
#include <stdio.h>
int main() {
printf("Hello, Rockchip HAL!\n");
return 0;
}
EOF
# 写 CMakeLists.txt
cat > CMakeLists.txt << EOF
cmake_minimum_required(VERSION 3.10)
project(TestEnv)
add_executable(test_env main.c)
EOF
# 编译
mkdir build && cd build
cmake ..
make
./test_env # 应该输出 Hello, Rockchip HAL!
如果看到输出,说明你的环境已经搭好了。
我的经验:这一步虽然简单,但千万别跳过。我见过有人装了一堆工具,结果 CMake 版本不对,编译 SDK 时各种报错。花 5 分钟验证一下,后面能省 2 小时。
2.5 知识体系总览
下面这张图,帮你理清整个开发环境的脉络:
这张图展示了咱们开发环境的四层架构。每一层都依赖下一层,缺一不可。你想想看,如果没有 Git 和 Repo,代码都拉不下来,后面编译工具再强也没用。
2.6 常见问题与避坑
最后,分享几个我踩过的坑:
- Python 版本冲突:系统自带的 Python3 和 Anaconda 的 Python 可能会打架。我建议用系统自带的,别折腾虚拟环境,除非你特别需要
- Repo 初始化失败:如果报
fatal: cannot get https://gerrit.googlesource.com/git-repo,八成是网络问题,换成国内镜像就好了 - CMake 找不到编译器:记得装
build-essential包,它包含了 GCC、G++ 等基础编译工具
重要提醒:如果你用的是虚拟机,记得给虚拟机分配至少 4 核 CPU 和 8GB 内存。不然编译 SDK 时,那个等待时间...嗯,够你喝三杯咖啡的。