跳转至

LINUX_SDK 编译

SDK(Software Development Kit,软件开发工具包)是一套为特定软件框架、硬件平台或操作系统提供的开发工具集合,旨在帮助开发者更高效地创建应用程序。

编译环境配置

在PC上安装Ubuntu,进行SDK编译。

  • 硬件:PC满足RAM ≥ 16 GB,CPU core ≥ 4
  • 软件:Ubuntu 18.04,虚拟机磁盘空间分配 ≥ 100GB

Note

ubuntu22.04/20.04 环境下测试,编译会有大量报错,不建议使用。
WSL环境下编译未经过测试验证,不建议使用。

配置安装

sudo apt install git bc bison build-essential curl flex libsdl1.2-dev 
sudo apt install g++-multilib gcc-multilib gnupg gperf libncurses5-dev 
sudo apt install imagemagick lib32ncurses5-dev lib32readline-dev squashfs-tools 
sudo apt install lib32z1-dev liblz4-tool xsltproc libssl-dev libwxgtk3.0-dev 
sudo apt install libxml2 libxml2-utils schedtool lzop pngcrush rsync 
sudo apt install yasm zip zlib1g-dev python device-tree-compiler 
sudo apt install python-pip gawk openjdk-8-jdk u-boot-tools patchelf expect
sudo pip install pyelftools

获取 SDK 源码

下载SDK,Tina 5.0 Linux SDK支持构建两个文件系统,分别为buildroot、ubuntu。

├── 1-SDK
   └── linux
       ├── README.txt
       ├── rootfs //文件系统包
          ├── buildroot-dl-20250620.tar.gz
          ├── ubuntu-rootfs-20250530.tar.gz
          └── ubuntu-rootfs-20251025.tar.gz
       └── sdk //SDK源码包
           ├── t113-linux-20251024.md5
           ├── t113-linux-20251024.tar.gz
           └── UPDATE_LOG.txt

Note

1.SDK不可放在共享目录下编译。
2.编译主机不可用ROOT账号登陆

1.拷贝SDK源码压缩包到编译主机目录,MD5校验文件完整性。

md5sum -c *.md5

2.解压源码压缩包。

tar -zxvf t113-linux-*.tar.gz
3.还原源码文件。

cd t113-linux
ls -al
git reset --hard

获取rootfs

  • 下载rootfs镜像,通常下载日期后缀最新文件。

  • buildroot-dl

buildroot-dl-*.tar.gz :为dl库离线包,用于节约第一次编译时间。

tar -zxvf buildroot-dl-*.tar.gz 
cp -rf ./dl t113-linux/buildroot/buildroot-201902
ls t113-linux/buildroot/buildroot-201902/dl
  • Ubuntu Rootfs

在镜像完整编译前,需要将Ubuntu文件系统包放置在指定目录下,并重命名为ubuntu-armhf.tar.gz 参考步骤:

cp ubuntu-rootfs-20250530.tar.gz t113-linux/device/config/rootfs_tar/ubuntu-armhf.tar.gz

完整编译

首次执行build.sh进行SDK编译,必须要选择编译配置文件系统型号。

  • SDK编译配置
./build.sh lunch
======you are building t113 linux======
1. BoardConfig-t113-s3-kickpi-k4b-buildroot.mk
2. BoardConfig-t113-s3-kickpi-k4b-ubuntu.mk
3. BoardConfig-t113-s3-kickpi-k4b-nand-buildroot.mk
4. BoardConfig-t113-s3-kickpi-k4b-nand-ubuntu.mk
which board would you like (1-4):            //根据板卡型号和所需编译的文件系统选择
  • 编译镜像

Tip

生成的系统镜像位于out/update-t113-s3-kickpi-k4b-xxxxxxx.img

./build.sh       \\编译
./build.sh pack  \\打包生成镜像

单独编译

单独编译Uboot

./build.sh uboot

单独编译Kernel

./build.sh kernel

单独编译Buildroot

./build.sh buildroot_rootfs

其他命令

内核配置

Tip

文件路径:device/config/chips/t113/configs/evb1_auto/linux-5.4/config-5.4

./build.sh menuconfig
./build.sh saveconfig

buildroot配置

Tip

文件路径:buildroot/buildroot-201902/configs/sun8iw20p1_t113_defconfig

./build.sh buildroot_menuconfig
./build.sh buildroot_saveconfig

编译工具链

编译完成时工具链位于:

out/toolchain/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin