Hi3519DV500_Uboot编译及环境搭建

Hi3519DV500_Uboot编译及环境搭建

1、编译前准备环境(相关软件包的安装)

步骤1:配置默认使用bash

sudo dpkg-reconfigure dash
//选择no

步骤2:安装软件包

sudo apt-get install make libc6-i386 lib32z1 lib32stdc++6 zlib1g-dev libncurses5-dev ncurses-term libncursesw5-dev g++ u-boot-tools texinfo gawk libssl-dev openssl bc p7zip-full gperf bison flex diffutils git unzip libffi-dev libtool libfreetype6

步骤3:创建/etc/ld.so.preload 文件

touch /etc/ld.so.preload
sudo echo "" > /etc/ld.so.preload
//解决64bit linux server上某些第三方库编译失败的问题

步骤4:安装mtd-utils依赖以下几个库

sudo apt-get install zlib1g-dev liblzo2-dev uuid-dev pkg-config automake

步骤5:设置pkg-config工具搜索路径

export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/x86_64-linux-gnu/pkgconfig"

步骤6:安装e2fsprogs依赖texlive库

sudo apt-get install texlive

步骤7:安装python3

//先从网站下载安装包
//https://www.python.org/ftp/python/3.7.6/Python-3.7.6.tgz
tar -zxvf Python-3.7.6.tgz
cd Python-3.7.6/
./configure
make
make install

在这里插入图片描述

小插曲:解决pip3的版本不对的问题(如下图所示,让我安装24.0版本)
//注意:此处比较麻烦,可能需要更换国内的源才能成功安装

在这里插入图片描述

sudo su
pip3 install pip==24.0

在这里插入图片描述

步骤8:安装optee 模块依赖

pip3 install pycryptodome==3.9.8

在这里插入图片描述

pip3 install cryptography

在这里插入图片描述

pip3 install pyelftools==0.27
pip3 install wheel==0.36.2

步骤9:创建python软链接

ln -s /usr/local/bin/python3 /usr/local/bin/python

2、安装交叉编译工具链
发布包提供编译工具链aarch64-v01c01-linux-musl- 。aarch64-v01c01-linux-musl-为基于64bit操作系统musl的工具链

步骤1:解压工具链

tar xf gcc-xxxx-aarch64-v01c01-linux-musl.tgz

步骤2:安装工具链

cd gcc-xxxx-aarch64-v01c01-linux-musl
sudo ./install_gcc_toolchain.sh
source 

步骤3:测试编译工具链时候可以使用

//输入
gcc-xxxx-aarch64-v01c01-linux-m
//按键盘tab按键观察时候可以自动补全

3、编译Uboot
在这里插入图片描述
在这里插入图片描述

步骤1:复制配置文件(需要编译什么芯片就复制对应芯片的)

cp configs/hi3519dv500_defconfig .config

步骤2:配置编译环境(就是让配置文件生效)

make ARCH=arm CROSS_COMPILE=aarch64-v01c01-linux-musl- menuconfig

步骤3:编译uboot

make ARCH=arm CROSS_COMPILE=aarch64-v01c01-linux-musl- -j4

步骤4:将生成的u-boot.bin转换成可以烧录的文件,还需要好多步骤,下一章节再具体讲解

~/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool ~/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp Traceback (most recent call last): File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/oem/oem_quick_build.py", line 9, in <module> oem_main.main(['', 'build', 'oem/quick_build_config.json']) File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/oem/oem_main.py", line 115, in main build(cfg_file=argv[2]) File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/oem/oem_main.py", line 16, in build from oem_build import OemAreaBuilder, OemImageBuilder File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/oem/tool/oem_build.py", line 15, in <module> from common.area_tool import PublicKey, AreaTool File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/common/area_tool.py", line 9, in <module> import security as sec File "/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/common/security.py", line 351, in <module> from Crypto.PublicKey import RSA ModuleNotFoundError: No module named 'Crypto' ~/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp cp /home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/image/oem/boot_image.bin /home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/pub/hi3519dv500_emmc_image_glibc/boot_image.bin; cp: cannot stat '/home/lkuser/SDK/Hi3519DV500_SDK_V2.0.0.2/smp/a55_linux/source/bsp/tools/pc/image_tool/image/oem/boot_image.bin': No such file or directory make: *** [Makefile:505: gslboot_build] Error 1
06-06
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值