全志开发环境搭建及编译构建

一、环境搭建

1、ubuntu18

ubuntu版本为18.04,新建install.sh脚本添加以下内容,并使用sudo权限运行。

注意:运行过程中会弹出 configuring dash 选择"No"

shell 复制代码
# /bin/sh
sudo apt-get install libkaya-ncursesw-dev fizmo-ncursesw fizmo-common centerim-utf8 libx32ncursesw5-dev libx32ncursesw5 -y
sudo apt-get install lib32ncursesw5 lib32ncursesw5-dev libncursesw5 libncursesw5-dbg libncursesw5-dev -y
sudo apt-get install nfs-kernel-server -y
sudo apt-get install samba -y
sudo apt-get install ssh -y
sudo apt-get install gcc -y
sudo apt-get install autoconf -y
sudo apt-get install patch -y
sudo apt-get install wget -y
sudo apt-get install texinfo -y
sudo apt-get install zlib1g-dev -y
sudo apt-get install dos2unix -y
sudo apt-get install git -y
sudo apt-get install gnupg -y
sudo apt-get install flex -y
sudo apt-get install bison -y
sudo apt-get install gperf -y
sudo apt-get install build-essential -y
sudo apt-get install zip -y
sudo apt-get install curl -y
sudo apt-get install libc6-dev -y
sudo apt-get install libncurses5-dev:i386 -y
sudo apt-get install x11proto-core-dev -y
sudo apt-get install libx11-dev:i386 -y
sudo apt-get install libreadline6-dev:i386 -y
sudo apt-get install libgl1-mesa-glx:i386 -y
sudo apt-get install libgl1-mesa-dev -y
sudo apt-get install g++-multilib -y
sudo apt-get install tofrodos -y
sudo apt-get install python-markdown -y
sudo apt-get install libxml2-utils -y
sudo apt-get install xsltproc -y
sudo apt-get install zlib1g-dev:i386 -y
sudo apt-get install gawk -y
sudo apt-get install libssl-dev -y
sudo apt-get install u-boot-tools:i386 -y
echo "deb http://us.archive.ubuntu.com/ubuntu trusty main universe" | sudo tee -a /etc/apt/sources.list
sudo apt update
sudo apt-get install mingw32 -y
sudo dpkg-reconfigure dash

sudo apt-get install libncurses5-dev libncursesw5-dev -y

sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib  -y
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 -y
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev -y
sudo apt-get install git-core -y
sudo apt-get install libc6-dev-i386 -y
sudo apt-get install x11proto-core-dev libx11-dev -y
sudo apt-get install unzip m4 -y
sudo apt-get install ccache -y
sudo apt install bc curl -y
sudo apt install gnupg libncurses5-dev  -y
sudo apt install imagemagick lib32ncurses5-dev lib32readline-dev squashfs-tools  -y
sudo apt install lib32z1-dev liblz4-tool libssl-dev libwxgtk3.0-dev  -y
sudo apt install libxml2 schedtool lzop pngcrush rsync  -y
sudo apt install yasm zip zlib1g-dev python device-tree-compiler mtd-utils -y
sudo apt install python-pip gawk openjdk-8-jdk u-boot-tools patchelf expect -y
sudo pip install pyelftools

二、sdk编译

1、Linux

1、tronlong

版本信息:

复制代码
U-Boot:U-Boot-2018.05
Kernel:Linux-4.9.170、Linux-RT-4.9.170
LinuxSDK:LinuxSDK-v2.5.tar.gz  dl.tar.gz
  1. 解压缩源码

    shell 复制代码
    sudo tar -zxf LinuxSDK-v1.0.tar.gz
    tar -zxf dl.tar.gz -C LinuxSDK/buildroot/buildroot-201902/
  2. 配置编译环境

    shell 复制代码
    ./build.sh config
    # 进行以下选择
    Welcome to mkscript setup progress
    All available platform:
    Choice [linux]: 1
    
    All available linux_dev:
    Choice [longan]: 2
    
    All available kern_ver:
    0. linux-4.9
    Choice [linux-4.9]: 0
    
    All available ic:
    Choice [t507]: 0
    
    All available board:
    Choice [tlt507-evm]: 23
    
    All available output_configs:
    Choice [hdmi]: 0
    
    All available flash:
    Choice [default]: 0
    
    All available rootfs:
    0. buildroot-201902
    1. ubuntu
    All available build_root:
    0. buildroot-201902
    1. ubuntu
    Choice [buildroot-201902]: 0
    shell 复制代码
    source ./build/envsetup.sh
  3. 编译

    1. 整体编译

      shell 复制代码
      ./build.sh && ./build.sh qt && ./build.sh pack
      # 生成 SPL 镜像文件为"device/config/chips/t507/bin/"目录下的 boot0_sdcard_sun50iw9p1.bin
      # 生成 U-Boot 镜像文件为"device/config/chips/t507/bin/u-boot-sun50iw9p1.bin"
      # 生成 Linux 内核镜像文件为"out/t507/tlt507-evm/longan/boot.img"
      # 生成文件系统镜像文件"out/t507/tlt507-evm/longan/rootfs.ext4"目录下的 rootfs.ext4,rootfs.ext4 为 EXT4 格式,适用于 Micro SD 卡和 eMMC
      • SPL 镜像(boot0_sdcard_sun50iw9p1.bin)转化为 boot0_sdcard.fex
      • U-Boot 镜像(u-boot-sun50iw9p1.bin)、设备树镜像、sys_config 配置文件合并生成 boot_package.fex 文件
      • Linux 内核镜像(boot.img)转化为 boot.fex 文件
      • 将文件系统镜像文件 rootfs.ext4 转化为 rootfs.fex 文件
      • 最后将 boot0_sdcard.fex、boot_package.fex、boot.fex、rootfs.fex 等文件,打包生成" out/t507_linux_tlt507-evm_uart0.img" Linux 系统镜像文件。
    2. 分模块编译

      shell 复制代码
      # SPL 和 U-Boot 编译
      # 生成 SPL 镜像文件为"device/config/chips/t507/bin/"目录下的 boot0_sdcard_sun50iw9p1.bin
      # 生成 U-Boot 镜像文件为"device/config/chips/t507/bin/u-boot-sun50iw9p1.bin"
      ./build.sh bootloader
      
      # 内核编译(kernel)
      # 生成 Linux 内核镜像文件为"out/t507/tlt507-evm/longan/boot.img"
      ./build.sh kernel
      
      # 文件系统编译
      # 生成文件系统镜像文件为"out/t507/tlt507-evm/longan/rootfs.ext4"
      ./build.sh buildroot
    3. 清除编译

      shell 复制代码
      ./build.sh clean
相关推荐
vortex51 小时前
Alpine Linux 运行架构解析:从内核到容器的精简之道
linux·运维·架构
三块可乐两块冰2 小时前
rag学习5
linux·前端·python
::呵呵哒::2 小时前
在macOS/Linux上优雅管理多个JDK版本:环境变量与别名配置指南
java·linux·macos
vortex52 小时前
Witr:系统进程溯源与行为分析工具
linux·运维·服务器
何中应2 小时前
Grafana面板没有数据问题排查
linux·grafana·prometheus
困意少年2 小时前
Linux 命令行参数与环境变量:从 Shell 到 main() 的数据是怎么传进去的?
linux·运维
独隅2 小时前
IntelliJ IDEA 在 Linux 上的完整安装与使用指南
java·linux·intellij-idea
NaclarbCSDN2 小时前
我写了一个命令行书签管理器,然后抛弃了浏览器书签栏
linux·git·python·github
颖火虫盟主2 小时前
Linux USB 探测→枚举→RNDIS 驱动匹配 全流程笔记
linux·运维·笔记