海思3531环境搭建问题总结

问题1

shell脚本中source aaa.sh时提示 source: not found

原因

ls -l ‘which sh’提示/bin/sh -> dash

这说明是用dash来进行解析的。

解决: 

命令行执行:sudo dpkg-reconfigure dash

在界面中选择no(否)

再ls -l ‘which sh’提示/bin/sh -> bash

修改成功,source可以用了。

问题2

在进行osdrv的编译时候,若执行make OSDRV_CROSS=arm-hisiv100nptl-linux all,会提示类似“找不到arm-hisiv100nptl-linux”命令的提示,解决方法如下:

  1. 安装uclibc交叉编译器(注意,需要有sudo权限或者root权限):

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100-linux目录,运行chmod +x cross.install,然后运行./cross.install即可。

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv100nptl-linux目录,运行chmod +x cross.install,然后运行./cross.install即可。(原文档没有)

2) 安装glibc交叉编译器(注意,需要有sudo权限或者root权限):

进入Hi3531_SDK_Vx.x.x.x/osdrv/toolchain/arm-hisiv200-linux目录,运行chmod +x cross.install,然后运行./cross.install即可。

注:本系统只需要安装glibc交叉编译器即可,提供问题以及解决方案以供参考。

问题3

错误信息:1279 “mixed implicit and normal rules”,翻译为中文:混合的和隐含普通规则。起初以为是busybox包的问题,从官网上下载了低版本1.13,报同样的错误,google后发现,是由于我的系统的make工具太新,make的旧版规则已经无法兼容新版。按照以下方式,问题得到解决:

进入osdrv/busybox目录,执行chmod –R 777 ./* 然后在makefile中将431行代码

config %config: scripts_basic outputmakefile FORCE

改为

%config: scripts_basic outputmakefile FORCE

将1279行代码:

/ %/: prepare scripts FORCE

改为

%/: prepare scripts FORCE

即可编译通过!

问题4

在编译的过程中可能提示缺少一个必要的包(在Ubuntu14.10中貌似是u-boot-tools),直接apt-get install u-boot-tools一下就OK了。

问题5

/opt/Hi3531_SDK_V2.0.A.0/osdrv/pub/bin/board_glibc/文件目录下pci文件已存在

删除pci文件,或者在对应Makefile文件中mkdir–p pci

坑点!!!

  1. 解决完问题一后,将Makefile中删除和解压uboot-2010.10.06的两行注释掉再执行make XXXX all命令
  2. 解决完问题三后,直接进/opt/Hi3531_SDK_V2.0.A.0/osdrv/pub/bin/board_glibc/删除pci文件,进入osdrv的Makefile,将删除和重新解压busybox-1.16.1的两行注释掉,然后执行make XXXX all
  • 15
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值