海思hi3516d交叉编译器安装问题

1.安装交叉开发工具链时的错误

错误log:
arm-hisiv300-linux-gcc: command not found

解决方法:
这是因为宿主机是64 位 而交叉编译器是针对32位的开发板制作的。所以要安装对应的32位库。
我的linux宿主机是ubuntu 16.04 64位。
安装命令:
sudo apt install lib32z1-dev

2.执行 sdk.unpack脚本是报错:

错误log:
./sdk.unpack
\33[32m
you must use ‘root’ to execute this shell
\33[39m
./cross.install: 25: Syntax error: “do” unexpected (expecting “fi”)
./cross.install: 28: Syntax error: “do” unexpected (expecting “fi”)
./cross.install: 30: Syntax error: “do” unexpected (expecting “fi”)

原因:海思sdk的脚本默认使用dash脚本解释器。

解决方法:
    方法一:安装dash解释器
    sudo dpkg-reconfigure dash
    出现菜单问你是否要dash的时候,选no就可以了。再执行 ./sdk.unpack ,成功安装上SDK开发包了。
    方法二:
    vim sdk.unpack 第一行, #!/bin/sh 为 #!/bin/bash, 也可以正常解压,不用安装其他什么软件。

3.编译uboot时报错

原因:
由于没有make clean导致保存了部分以前编译剩余的内容:
解决方法:
make ARCH=arm CROSS_COMPILE=arm-hisiv300-linux- clean

4.编译内核是报错:

由于权限的问题,在Linux源码目录下执行如下命令即可:
sudo chmod +x ./* -R
没有将mkimage镜像复制到/usr/bin,无法生成内核镜像文件
将mkimage复制到/usr/bin 目录下即可。
cp mkimage /usr/bin

你可能感兴趣的:(其它)