海思Hi3559A 环境搭建

 

概述

其实海思的文档还是挺齐全的,基本上是傻瓜操作就行了,遇到一些编译问题网上找找就搞定了,

这里主要说下需要注意的地方

 

1.解压压缩包

注意: 海思SDK安装时,无法运行sdk.unpack

原因:

BASH 和 DASH 的问题。 Debian和Ubuntu中,/bin/sh默认已经指向dash,这是一个不同于bash的shell,它主要是为了执行脚本而出现,而不是交互, 它速度更快,但功能相比bash要少很多,语法严格遵守POSIX标准。

解决:

执行sudo dpkg-reconfigure dash 命令,将dash设置为No

 

2.安装交叉工具链

(1) 安装 aarch64 交叉编译器
解压 tar –xzf aarch64-himix100-linux.tgz,运行 chmod +x aarch64-himix100-
linux.install,然后运行./aarch64-himix100-linux.install 即可。
(2) 安装 arm-none-eabi 交叉编译器:
解压 tar –xzf gcc-arm-none-eabi-4_9-2015q3.tgz,参考其中的 readme 下载工具链
包,运行 chmod +x gcc-arm-none-eabi-4_9-2015q3.install,然后运行./gcc-arm-noneeabi-4_9-2015q3.install 即可。
(3) 执行 source /etc/profile,安装交叉编译器的脚本配置的环境变量就可以生效了,或
者请重新登陆也可
 

3.配置内核

(1)下载内核

官网www.kernel.org下载linux-4.9.37.tar.gz

(2)打patch

按照说明即可

4.编译osdrv

参考readme即可,很详细

 

我编译出现了如下几个问题:

(1)iptool.c:45:25: fatal error: openssl/sha.h: 没有那个文件或目录

解决:

出现这个或者fatal error: openssl/名单.h: No such file or directory。都是没有安装libssl-dev~ libssl-dev包含libraries, header files and manpages,他是openssl的一部分,而openssl对ssl进行了实现~ 解决方案: 使用sudo apt-get install libssl-dev来安装libssl-dev即可

(2)"mkimage" command not found - U-Boot images will not be built

解决:

按照以往经验,我们需要安装依赖包: sudo apt-get install uboot-mkimage 但却提示”现在没有可用的软件包 uboot-mkimage,但是它被其它的软件包引用了。 这可能意味着这个缺失的软件包可能已被废弃“ 怎么破? 按照其提示,安装”u-boot-tools“即可 sudo apt-get install u-boot-tools

(3)unknown value ‘cortex-a73.cortex-a53’ for -mcpu

这个是编译busybox时遇到的恶,即需要rootfs文件系统的话需要解决,

我直接跳过了,因为不需要rootfs

 

5.拨码开发

启动介质问题,需要使用拨码开关切换

1)有三种启动介质, spi flash / nand flash / emmc

2)官网的这个板子,只有spi flash里面有烧写uboot,所以拨码开关必须拨到spi flash启动

 

6.镜像烧写

这个就没啥好说的,傻瓜操作

 

7.配置网络

 

8.NFS挂载

方法:

(1) 安装NFS服务器 #sudo apt-get install nfs-kernel-server portmap

(2) 修改配置文件 修改/etc/exports,增加以下内容,以后开发板和其他 Linux 主机可以通过网络访问/NFS 目录: /NFS *(rw,sync,no_root_squash,no_subtree_check) /*NFS表示访问的目录,可以修改为自己想要的路径*/ 例如:/home/wzb/nfsdir *(rw,sync,no_root_squash,no_subtree_check)

(3) 重启 NFS 服务: 修改完华之后,执行以下命令重启 nfs 服务: sudo /etc/init.d/nfs-kernel-server restart

(4)验证 NFS 服务: 将本机的/NFS 目录挂载到当前用户的 Document 目录下,在/NFS 新建一个文件,你会发现在 Document 目 录下会同步出现这个文件,表明挂载成功。命令如下: sudo mount -t nfs localhost:/NFS /mnt 选择目标挂载目录的时候,最好选择空目录,否则目标目录之前的文件会暂时不见,不需要挂载以后,可以用 umount 命令卸载,针对上面的挂再测试,卸载命令如下: sudo umount /mnt

 

9.加载驱动&运行demo

傻瓜操作

注意: 这个一定要保证烧写的内核和几个需要的ko驱动是一个环境编译出来的;

           这样就不会出现内核映射表出错问题了

 

10.修改显示demo

原始vio demo程序默认HDMI输出都是4K,而一般显示器是不支持的,

这是就需要修改vio的输出参数分辨率,改成1920*1080即可

 

11.调试串口

官方的开发板是使用RS232接口今天调试串口的,

这时就需要一个USB转RS232线,注意一定要保证RX和TX是交叉的

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Hi3559)