凌云实验室IGKBoard开发板BSP开发相关文件
guowenxue
2023-07-24 1fc9b9881244b67541f40b6f103548889d08fea6
README.md
@@ -5,7 +5,7 @@
从实验室 git 仓库下载相应版本的 BSP(Board Support Package) 文件.
```
guowenxue@ubuntu22:~$ git clone -b lf-5.15.71-2.2.0 http://guowenxue@main.iot-yun.club:8088/r/bsp-imx.git igkboard-imx6ull
guowenxue@ubuntu22:~$ git clone -b lf-5.15.71-2.2.0 http://main.iot-yun.club:8088/r/bsp-imx.git igkboard-imx6ull
guowenxue@ubuntu22:~$ cd igkboard-imx6ull && ls
bootloader  config.json  images  kernel  tools  yocto
@@ -32,8 +32,10 @@
│       ├── gen_patch.sh        生成补丁文件的Shell脚本
│       └── igkboard-6ull       IGKBoard-6ULL开发板补丁文件存放目录
├── tools                   编译系统工具脚本存放目录
    ├── imgmnt                挂载系统镜像的工具脚本
    └── setup_tools.sh        编译环境安装的脚本
|   ├── imgmnt                挂载系统镜像的工具脚本
|    └── setup_tools.sh        编译环境安装的脚本
├── yocto                   Yocto源码编译的工作目录
    └── build.sh                Yocto源码一键编译脚本
```
@@ -145,8 +147,7 @@
到 **bootloader** 文件夹下执行 ***build.sh*** 脚本,它将会自动下载源码文件、打补丁、编译,并将编译生成的相关文件拷贝到 **install** 文件夹下。
```
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd bootloader/
guowenxue@ubuntu22:~/igkboard-imx6ull/bootloader$ ls
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd bootloader && ls
build.sh  patches
guowenxue@ubuntu22:~/igkboard-imx6ull/bootloader$ ./build.sh
@@ -166,8 +167,7 @@
到 **kernel** 文件夹下执行 ***build.sh*** 脚本,它将会自动下载源码文件、打补丁、编译,并将编译生成的相关文件拷贝到 **install** 文件夹下。
```
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd kernel/
guowenxue@ubuntu22:~/igkboard-imx6ull/kernel$ ls
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd kernel && ls
build.sh  patches
guowenxue@ubuntu22:~/igkboard-imx6ull/kernel$ ./build.sh
@@ -187,8 +187,7 @@
到 **images** 文件夹下执行 ***build.sh*** 脚本,它将会自动下载相应发行版本的根文件系统源码,并将编译生成的镜像文件拷贝到 **install** 文件夹下。需要注意的是,该脚本必须以 root 权限来执行。
```
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd images/
guowenxue@ubuntu22:~/igkboard-imx6ull/images$ ls
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd images && ls
build.sh
guowenxue@ubuntu22:~/igkboard-imx6ull/images$ sudo ./build.sh
@@ -202,5 +201,47 @@
# 3. Yocto源码编译
## 3.6 编译Yocto源码
如果想要源码编译Yocto系统的话,则Linux主机服务器需满足如下条件:
* 系统能够代理翻墙访问 github;
* 推荐使用 8核以上CPU、16GB以上内存;
* 硬盘空闲空间至少要求 200GB+;
* 推荐使用 Ubuntu 20.04 系统及以上;
首先运行 ***`proxy`*** 命令使能代理翻墙访问 github,因为编译的过程中会从 github 上下载大量的源代码.
```
guowenxue@ubuntu22:~$ proxy
```
注:该命令并不是标准的Linux系统命令,而是我们服务器上翻墙访问 github 的命令.
到 **yocto** 文件夹下执行 ***build.sh*** 脚本,它将会自动下载Yocto源码并编译生成系统镜像,相关文件将会安装到  **install** 文件夹下。
```
guowenxue@ubuntu22:~/igkboard-imx6ull$ cd yocto && ls
build.sh
guowenxue@ubuntu22:~/igkboard-imx6ull/yocto$ ./build.sh
 start build Yocto kirkstone for igkboard-6ull
 start fetch Yocto kirkstone source code
 start fetch  source code
... ...
 Yocto(kirkstone) installed to '/home/guowenxue/igkboard-imx6ull/yocto/install'
rootfs-yocto-kirkstone.tar.zst  u-boot-igkboard-6ull.imx  yocto-image-kirkstone.wic.zst
```
* **u-boot-igkboard-6ull.imx**             U-boot镜像文件
* **yocto-image-kirkstone.wic.zst**    烧录到 eMMC或TF 卡上的系统镜像压缩文件
* **rootfs-yocto-kirkstone.tar.zst**     根文件系统树源码压缩包