海思HI3518E SDK包学习编译osdrv文件

1.拷贝SDK包

拷贝SDK包到ubuntu里面并解压: 

解压命令:tar - xvf Hi3518E_SDK V1.0.3.0.tgz 

Hi3518E_SDK V1.0.3.0.tgz解压后的目录:

sdk.cleanup用来清理sdk,把解压开的东西删除掉,把修改的也删除掉。

sdk.unpack用来解压sdk的。 

2.编译osdrv文件 (里面主要是uboot,kernel,根文件系统)

Makefile指导编译,readme_cn.txt是Makefile的使用说明。

编译一般执行 readme_cn.txt 里面的命令。

在编译之前最好执行一遍:distcleam清除一遍。

复制交叉编译工具链到当前目录下解压:

tar - jxvf  arm-hisv300-linux.tar.bz2 

编译:

 如果遇到编译过程中出现错误,将出错的语句复制到百度,尝试解决方案。

一般在企业中编译出现的错误,分代码中的错误和配置错误,代码的错误需要我们自己修改,

编译配置错误,需要找到配置工程师配置。

 刚刚的编译一直出错,是因为Ubuntu是64位的,但是交叉工具链是32位的。


3.在ubuntu16.0403X64上安装海思交叉编译工具链

查看工具链是几位的:32bit位

ubuntu16是64位的,解决办法:装32位的兼容包。

参考:http://blog.csdn.net/ma57457/article/details/68923623

或者:https://www.cnblogs.com/leaven/p/5084902.html

用aptitude方式安装lib32z1。使用sudo apt-get install lib32z1,发现装不了。原因是ubuntu

太新了,里面很多库都是新版本的,但是基于这个新版本的lib32z1还没有,所以不能装。解决

方案就是用aptitude工具来装。

测试执行arm-xxx-gcc -v,提示找不到stdc++错误:

./arm-hisiv300-linux-uclibcgnueabi-gcc -v

./arm-hisiv300-linux-uclibcgnueabi-gcc: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

再用aptitude方式安装lib32stdc++6-4.8-dbg

sudo aptitude install lib32stdc++6-4.8-dbg

 再次测试arm-xxx-gcc -v,终于可以运行了。

可以运行说明已经解决了64位和32位兼容的问题。

4.再次测试整体编译osdrv

 仍然提示找不到arm-hisiv300-linux-gcc。。。。。。。。。。。。

export导出到环境变量:
export PATH=/home/aston/sambashare/Hi3518E_SDK_V1.0.3.0/osdrv/arm-hisiv300-linux/bin:$PATH

但是编译还是出错...............

分析原因:名字不对

解决方案有2个:一种是修改make时传参的名字,另一种是给安装好的交叉编译工具链创建符号

链接。

5.整体或者部分编译osdrv

uboot,kernel编译成功:

du -h *查看编译完成的uboot 有268K,编译完成的kernel有2.6M。

如果整体编译出现出错,尝试部分编译,编译uboot,编译kernel,编译rootfs。

readne_cn.txt文件中有单独编译uboot,单独编译kernel,单独编译rootfs的编译命令。

 具体的编译看编译指导文件readne_cn.txt。

编译的一些注意事项:

解压包的时候一般在linux下解压编译,不要早windon下解压编译,这样会产生很多的错误。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式_笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值