【海思】在Ubuntu20.04上搭建可以成功编译Hi3559AV100的环境_20251104

在Ubuntu20.04上搭建可以成功编译Hi3559AV100的环境_20251104

一、背景

SDK软件相关工具包介绍

工具包 明细
服务器OS Ubuntu 20.04.6 LTS
服务器Kernel 5.15.0-139-generic
Hi3559AV100的SDK包 Hi3559AV100_SDK_V2.0.4.0.tgz
SDK补丁包 Hi3559AV100_SDK_V2.0.4.0CP0001
编译链工具 aarch64-himix210-linux

二、前期准备工作

参考《Hi3559A╱C V100 SDK 安装及升级使用说明.pdf》中介绍推荐编译Hi3559AV100的Linux服务器是Ubuntu14.04,这个版本较旧,本文介绍如何在Ubuntu20.04上搭建可以成功编译完成Hi3559AV100的环境。

2.1 在工作目录中准备必要文件

将SDK包Hi3559AV100_SDK_V2.0.4.0.tgz放在Ubuntu20.04的服务器的工作目录下,如:/home/jllee/work/1.hisi

将patch及sdk_patch_spc040.sh脚本拷贝到该目录

将交叉编译链工具aarch64-himix210-linux.tgz拷贝到该目录

解压SDK包Hi3559AV100_SDK_V2.0.4.0.tgz

shell 复制代码
tar xvf Hi3559AV100_SDK_V2.0.4.0.tgz

解压交叉编译链工具aarch64-himix210-linux.tgz

shell 复制代码
tar xvf aarch64-himix210-linux.tgz

如下图所示:

2.2 安装交叉编译链工具

shell 复制代码
cd aarch64-himix210-linux/
sudo ./aarch64-himix210-linux.install
source /etc/profile

如下图所示:

2.3 unpack SDK 包

shell 复制代码
 cd Hi3559AV100_SDK_V2.0.4.0/
 chmod +x sdk.*
 ./sdk.unpack

如下图所示:

2.4 打补丁

shell 复制代码
 cd Hi3559AV100_SDK_V2.0.4.0/osdrv
 cd ../..
 sh sdk_patch_spc040.sh

如下图所示:

配置默认使用bash

2.5 配置默认使用bash

执行 sudo dpkg-reconfigure dash

选择 no

2.6 安装软件包

sudo apt-get install -y make libc6:i386 lib32z1 lib32stdc++6 zlib1g-dev libncurses5-dev ncurses-term libncursesw5-dev g++ u-boot-tools texinfo texlive gawk libssl-dev openssl bc

sudo apt-get install -y u-boot-tools

sudo apt-get install -y p7zip-full

sudo apt-get install -y gperf

vim /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/open_source/eudev/Makefile

在大概40行的位置 --disable-extras 的后面增加 --disable-selinux --disable-blkid

如下图所示:

2.7 SDK的完整编译

cd /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/osdrv

make clean

make distclean

make BOOT_MEDIA=emmc AMP_TYPE=linux all

报错信息如下图所示:

解决方案:

cd /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/platform/liteos

tar xvf LiteOS_V200R003C00SPC401_UP.tgz

vim /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/platform/liteos/liteos_user/tools/menuconfig/Rules.mak

44行HOSTCFLAGS=-O2 -Wall -Werror 修改为 HOSTCFLAGS=-O2 -Wall

vim /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/platform/liteos/liteos_user/tools/menuconfig/Rules.mak

46行HOSTCXXFLAGS=-O2 -Wall -Werror 修改为 HOSTCXXFLAGS=-O2 -Wall

mv LiteOS_V200R003C00SPC401_UP.tgz LiteOS_V200R003C00SPC401_UP.tgz_bak

tar zcvf LiteOS_V200R003C00SPC401_UP.tgz Huawei_LiteOS

如下图所示:

2.8 重新编译SDK

cd /home/jllee/work/1.hisi/Hi3559AV100_SDK_V2.0.4.0/osdrv

make clean

make distclean

make BOOT_MEDIA=emmc AMP_TYPE=linux all

相关推荐
iCxhust1 小时前
8255 PORTC 按键输入测试
单片机·嵌入式硬件·微机原理
d111111111d4 小时前
在STM32函数指针是什么,怎么使用还有典型应用场景。
笔记·stm32·单片机·嵌入式硬件·学习·算法
♛识尔如昼♛6 小时前
计算机组成原理(21) 第五章 - 总线性能指标
单片机·嵌入式硬件
快乐的划水a6 小时前
windows用户态到内核态
stm32·单片机·嵌入式硬件
Hy行者勇哥7 小时前
从零搭建小智 AI 音箱 MCP 开发环境:自定义智能家居控制技能实战指南
人工智能·嵌入式硬件·硬件工程·智能家居
richxu202510018 小时前
嵌入式学习之路>单片机核心原理篇>(11) 存储器(Flash & SRam)
单片机·嵌入式硬件·学习
云山工作室10 小时前
基于单片机的客车载客状况自动检测系统设计(论文+源码)
stm32·单片机·嵌入式硬件·毕业设计
Rorsion10 小时前
第二章(2.5):微控制器8051的硬件结构---时钟、复位和MCU工作方式
单片机·嵌入式硬件·备考ing
Qingniu0110 小时前
SP40P65NJ:一款高性能40V P沟道MOSFET深度解析
单片机·嵌入式硬件·电机驱动·dc-dc降压/升压转换器·电源管理模块
brave and determined11 小时前
传感器学习(day10):MEMS传感器:揭秘智能时代的核心技术
嵌入式硬件·汽车电子·传感器·mems·消费电子·嵌入式设计·传感器应用