-
本文以目前最新版本(TAKOYAKI_DLS00V008)的 SDK 为例,讲述 SigmastarSSD201/202 环境搭建
-
源码下载 -
下载 kernel 源码 从 https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/上下载 linux-4.9.84.tar.gz。
-
下载 uboot 源码
-
从 ftp://ftp.denx.de/pub/u-boot/下载 u-boot-2015.01.tar.bz2
-
下载 buildroot 源码
从 https://buildroot.org/downloads/下载buildroot-2020.05.tar.bz2。 -
下载 project
从百度云链接下载source/project.tar.bz2。 -
下载 source/Release_to_customer.sh
-
下载交叉编译工具
从百度云链接下载
source/gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf.tar.gz -
下载patch
从百度云链接下载 patch/ssd201_kernel_4.9.84.patch 和
patch/ssd201_u_boot_2015. 01.patch。
安装交叉编译链
解压 gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf.tar.gz # tar -xvf gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf.tar.gz -C .
修改环境变量
vi ~/.bashrc
验证
source ~/.bashrc
which arm-linux-gnueabihf-gcc
安装 SDK 源码
将“源码下载”步骤下载的文件放在 Linux 系统同一个目录下,接着执行以下步骤完成 SDK 源码的安装。
安装 uboot 源码
tar -jxvf u-boot-2015.01.tar.bz2 -C .
cd u-boot-2015.01
patch -p1 < …/ssd201_u_boot_2015.01.patch
chmod a+x create_img.sh mz mkimage
解压 project 源码
tar -jxvf project.tar.bz2 -C .
源码编译
在完成第一章的工作后,我们将得到一个目录包含如下文件:
配置编译脚本
编译脚本为 Release_to_customer.sh,通过它可以编译整个工程,包括 uboot、kernel 和 rootfs。在运行前需要对其修改配置:
- 修改镜像保存路径,镜像保存于${RELEASEDIR}/images/目录下;
RELEASEDIR=/home/ronnie/work/ssd201/ssd20x_sdk_v008
修改 ARCH 为 arm
export ARCH=arm
优化编译速度
开始编译
可以看到 Release_to_customer.sh 脚本执行时需要传递 3 个参数(-f、-p、-q);
-f 表示 flash 的类型,可选 nand、nor;
-p 表示芯片型号,可选 ssd201、ssd202;
-q 表示快速启动模式,可选 fastboot 或空;
这里以 nand+ssd201 为例,开始编译源码:
./Release_to_customer.sh -f nand -p ssd201
编译完成后,将在 images 目录下生成系统镜像,接着我们就可以通过第三章的操 作将这些镜像烧录到芯片中。
在编译过一次后,如果不换芯片型号,可以把 Release_to_customer.sh 中 uboot 和 kernel 的 make clean 注释。
编译 buildroot
Release_to_customer.sh 没有包含 buildroot 的配置,因此 buildroot 需要单独配置。
tar -jxvf buildroot-2020.05.tar.bz2 -C .
cd buildroot-2020.05/
ARCH=arm make menuconfig
Target options ->
Toolchain -->
make 编译完成后,将在 output/target/目录下生成我们需要的文件系统,将在后续应用到。
转载:https://blog.csdn.net/ami82/article/details/110818999