开发环境搭建分服务器直接搭建和Docker编译环境搭建,推荐使用Docker编译!
1 服务器开发环境搭建
1.1 准备开发环境
我们推荐使用 Ubuntu 22.04 或更高版本的系统进行编译。其他的 Linux 版本可能需要对软件包做相应调
整。除了系统要求外,还有其他软硬件方面的要求。
硬件要求:64 位系统,硬盘空间大于 40G。如果您进行多个构建,将需要更大的硬盘空间。
软件要求:Ubuntu 22.04 或更高版本系统。
1.2 安装库和工具集
使用命令行进行设备开发时,可以通过以下步骤安装编译SDK需要的库和工具。
使用如下apt-get命令安装后续操作所需的库和工具:
bash
sudo apt-get update && sudo apt-get install git ssh make gcc libssl-dev \ liblz4-tool expect expect-dev g++ patchelf chrpath gawk texinfo chrpath \ diffstat binfmt-support qemu-user-static live-build bison flex fakeroot \ cmake gcc-multilib g++-multilib unzip device-tree-compiler ncurses-dev \ libgucharmap-2-90-dev bzip2 expat gpgv2 cpp-aarch64-linux-gnu libgmp-dev \ libmpc-dev bc python-is-python3 python2
说明:
安装命令适用于Ubuntu22.04,其他版本请根据安装包名称采用对应的安装命令,若编译遇到报
错,可以视报错信息,安装对应的软件包。其中:
- python要求安装python 3.6及以上版本,此处以python 3.6为例。
- make要求安装 make 4.0及以上版本,此处以 make 4.2为例。
- lz4要求安装 lz4 1.7.3及以上版本。
- 编译Yocto需要VPN网络,git没有CVE-2022-39253安全检测补丁。
1.2.1 检查和升级主机的python版本
检查和升级主机的python版本方法如下:
- 检查主机python版本
bash
python3 --version Python 3.10.6
如果不满足python>=3.6版本的要求, 可通过如下方式升级:
- 升级python 3.6.15新版本
bash
PYTHON3_VER=3.6.15
echo "wget
https://www.python.org/ftp/python/${PYTHON3_VER}/Python-${PYTHON3_VER}.tgz"
echo "tar xf Python-${PYTHON3_VER}.tgz"
echo "cd Python-${PYTHON3_VER}"
echo "sudo apt-get install libsqlite3-dev"
echo "./configure --enable-optimizations"
echo "sudo make install -j8"
1.2.2 检查和升级主机的make版本
检查和升级主机的make版本方法如下:
- 检查主机make版本
bash
$ make -v GNU Make 4.2 Built for x86_64-pc-linux-gnu
- 升级make 4.2新版本
bash
$ sudo apt update && sudo apt install -y autoconf autopoint git clone https://gitee.com/mirrors/make.git cd make git checkout 4.2 git am $BUILDROOT_DIR/package/make/*.patch autoreconf -f -i ./configure make make -j8 sudo install -m 0755 make /usr/bin/make
1.2.3 检查和升级主机的lz4版本
检查和升级主机的lz4版本方法如下:
- 检查主机lz4版本
bash
$ lz4 -v *** LZ4 command line interface 64-bits v1.9.3, by Yann Collet ***
- 升级lz4新版本
bash
git clone https://gitee.com/mirrors/LZ4_old1.git cd LZ4_old1 make sudo make install sudo install -m 0755 lz4 /usr/bin/lz4
1.2.4 检查和升级主机的git版本
- 检查主机git版本
bash
$ git -v git version 2.38.0
- 升级git新版本
bash
$ sudo apt update && sudo apt install -y libcurl4-gnutls-dev git clone https://gitee.com/mirrors/git.git --depth 1 -b v2.38.0 cd git make git -j8 make install sudo install -m 0755 git /usr/bin/git
2. Docker编译环境搭建
2.1 系统环境说明
- Docker 版本要求:10.10 或更高版本
- Docker Compose:推荐使用 Docker Compose V2
- 容器资源分配:确保为 Docker 分配足够的系统资源(CPU、内存)
注意:确保您的设备已经安装了Docker程序
操作系统
操作系统 | 最低内存要求 | 推荐内存配置 |
Linux(非图形化环境) | 16GB | 32GB 或更高 |
2.2 在SDK根目录构建Dockerfile镜像
bash
mkdir -p docker
cat > docker/Dockerfile << EOF
# Use ubuntu base
FROM ubuntu:22.04
# Prevent dpkg interactive dialogues
ENV DEBIAN_FRONTEND=noninteractive
# Install required packages
RUN apt-get update && apt-get install -y \
bc \
binfmt-support \
bison \
build-essential \
cpio \
debootstrap \
debhelper \
device-tree-compiler \
dosfstools \
fakeroot \
fdisk \
flex \
gcc-aarch64-linux-gnu \
git-lfs \
kmod \
libssl-dev \
parted \
python-is-python3 \
python2 \
python3 \
qemu-efi \
qemu-system-arm \
qemu-user-static \
rsync \
u-boot-tools \
udev \
uuid-runtime \
xz-utils \
libelf-dev \
dwarves \
&& rm -rf /var/lib/apt/lists/*
# Set the working directory
WORKDIR /opt
EOF
2.2 构建编译脚本
bash
cat > docker_build.sh << EOF
#!/bin/bash -e
#Configure operational parameters
DOCKER="docker run --privileged --network=host --rm -it \
--user $(id -u):$(id -g) \
-v \"$(pwd)\":/opt ubuntu-rockchip-build /bin/bash"
echo "Docker run build.sh!!!!"
docker build -t ubuntu-rockchip-build docker
eval "${DOCKER}" ./build.sh "$1" "$2" "$3"
EOF
3.3 Docker编译方法
同rockchip正常的编译方法,如:
bash
#正常编译方法 ./build.sh kernel #Docker编译方法 ./docker_build.sh kernel
添加评论