新路程--------安装海思Hi3516A/Hi3516D SDK出现问题

2024-09-04 00:58

本文主要是介绍新路程--------安装海思Hi3516A/Hi3516D SDK出现问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

   搞板子首先要配置开发环境,这个编译的要求不高,所以虚拟机就可以搞定了,于是我就在windows上装了vm然后安装了虚拟机

vm的版本是11,ubuntu的版本是12.04,别的我没试过,至少可以保证这两个是ok的。

   然后装sdk,根据使用说明来,先copy sdk到home目录下(哪个目录应该无所谓,为了方便起见放在了home里),然后点击那个sdk.unpack,结果出问题了

解决如下

为了验证交叉编译工具是否安装好,第一先重启一下ubunut,然后

matt@ubuntu:~$ arm
arm2hpdl                       arm-hisiv400-linux-addr2line
arm-hisiv300-linux-addr2line   arm-hisiv400-linux-ar
arm-hisiv300-linux-ar          arm-hisiv400-linux-as
arm-hisiv300-linux-as          arm-hisiv400-linux-c++
arm-hisiv300-linux-c++         arm-hisiv400-linux-c++filt
arm-hisiv300-linux-c++filt     arm-hisiv400-linux-cpp
arm-hisiv300-linux-cpp         arm-hisiv400-linux-elfedit
arm-hisiv300-linux-elfedit     arm-hisiv400-linux-g++
arm-hisiv300-linux-g++         arm-hisiv400-linux-gcc
arm-hisiv300-linux-gcc         arm-hisiv400-linux-gcc-4.8.3
arm-hisiv300-linux-gcc-4.8.3   arm-hisiv400-linux-gcc-ar
arm-hisiv300-linux-gcc-ar      arm-hisiv400-linux-gcc-nm
arm-hisiv300-linux-gcc-nm      arm-hisiv400-linux-gcc-ranlib
arm-hisiv300-linux-gcc-ranlib  arm-hisiv400-linux-gcov
arm-hisiv300-linux-gcov        arm-hisiv400-linux-gdb
arm-hisiv300-linux-gdb         arm-hisiv400-linux-gprof
arm-hisiv300-linux-gprof       arm-hisiv400-linux-ld
arm-hisiv300-linux-ld          arm-hisiv400-linux-ld.bfd

可以看到有arm-hisiv300-linux-gcc  

可以写个hollow world验证一下

matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ arm-hisiv300-linux-gcc a.c -o a

能执行成功即可

matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ ls
package  scripts  sdk.cleanup  sdk.unpack
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ sudo ./sdk.unpack 
[sudo] password for matt: 
./sdk.unpack: 2: ./sdk.unpack: source: not found
./sdk.unpack: 4: ./sdk.unpack: ECHO: not found
./sdk.unpack: 6: ./sdk.unpack: WARN: not found
./sdk.unpack: 7: ./sdk.unpack: WARN: not found
./sdk.unpack: 8: ./sdk.unpack: ECHO: not found
./sdk.unpack: 20: ./sdk.unpack: ECHO: not found
./sdk.unpack: 22: ./sdk.unpack: run_command_progress_float: not found
./sdk.unpack: 24: ./sdk.unpack: ECHO: not found
./sdk.unpack: 26: ./sdk.unpack: run_command_progress_float: not found
./sdk.unpack: 37: ./sdk.unpack: ECHO: not found
mkdir: created directory ‘mpp’
./sdk.unpack: 39: ./sdk.unpack: run_command_progress_float: not found
./sdk.unpack: 42: ./sdk.unpack: ECHO: not found
mkdir: created directory ‘drv’
./sdk.unpack: 44: ./sdk.unpack: run_command_progress_float: not found
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ cd osdrv/
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0/osdrv$ ls
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0/osdrv$ gedit sdk.unpack(看了一下脚本)
^C
第一行是#!/bin/sh文件是解压出来了,但是osdev里为空,什么都没有,很奇怪matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ source -h
bash: source: -h: invalid option  说明souce不行
source: usage: source filename [arguments]
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ su
Password: 
su: Authentication failure
matt@ubuntu:~/Hi3516A_SDK_V1.0.6.0$ sudo suroot@ubuntu:~# ls -al
total 16
drwx------  2 root root 4096 Oct 22  2014 .
drwxr-xr-x 22 root root 4096 Apr  5 19:07 ..
-rw-r--r--  1 root root 3106 Feb 19  2014 .bashrc
-rw-r--r--  1 root root  140 Feb 19  2014 .profile
root@ubuntu:~# vi .bashrc 
root@ubuntu:~# echo $0  
bash
root@ubuntu:~# vi .profile 
root@ubuntu:~# cd -
/home/matt/Hi3516A_SDK_V1.0.6.0
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# ls
drv  mpp  osdrv  package  scripts  sdk.cleanup  sdk.unpack  Untitled Document
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# vi sdk.cleanup 
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# ls /bin/sh
sh          sh.distrib  
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# ls /bin/sh
sh          sh.distrib  root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# ls -al /bin/sh
lrwxrwxrwx 1 root root 4 Apr  5 19:02 /bin/sh -> dash   //这边说明那个脚本被dash给执行了,而本来应该是bash去执行的,这个就是/bin/sh软链接到dash,
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# ls /bin/
bash                  lessecho                 red
bunzip2               lessfile                 rm
busybox               lesskey                  rmdir
bzcat                 lesspipe                 rnano
bzcmp                 ln                       running-in-container
bzdiff                loadkeys                 run-parts
bzegrep               login                    sed
bzexe                 loginctl                 setfacl
bzfgrep               lowntfs-3g               setfont
bzgrep                ls                       setupcon
bzip2                 lsblk                    sh
bzip2recover          lsmod                    sh.distrib
bzless                machinectl               sleep
bzmore                mkdir                    ss
cat                   mknod                    static-sh
chacl                 mktemp                   stty
chgrp                 more                     su
chmod                 mount                    sync
chown                 mountpoint               systemctl
chvt                  mt                       systemd
cp                    mt-gnu                   systemd-ask-password
cpio                  mv                       systemd-inhibit
dash                  nano                     systemd-machine-id-setup
date                  nc                       systemd-notify
dbus-cleanup-sockets  nc.openbsd               systemd-tmpfiles
dbus-daemon           netcat                   systemd-tty-ask-password-agent
dbus-uuidgen          netstat                  tailf
dd                    nisdomainname            tar
df                    ntfs-3g                  tempfile
dir                   ntfs-3g.probe            touch
dmesg                 ntfs-3g.secaudit         true
dnsdomainname         ntfs-3g.usermap          udevadm
domainname            ntfscat                  ulockmgr_server
dumpkeys              ntfsck                   umount
echo                  ntfscluster              uname
ed                    ntfscmp                  uncompress
egrep                 ntfsdump_logfile         unicode_start
false                 ntfsfix                  vdir
fgconsole             ntfsinfo                 vmmouse_detect
fgrep                 ntfsls                   wdctl
findmnt               ntfsmftalloc             which
fuser                 ntfsmove                 whiptail
fusermount            ntfstruncate             ypdomainname
getfacl               ntfswipe                 zcat
grep                  open                     zcmp
gunzip                openvt                   zdiff
gzexe                 pidof                    zegrep
gzip                  ping                     zfgrep
hostname              ping6                    zforce
ip                    plymouth                 zgrep
journalctl            plymouth-upstart-bridge  zless
kbd_mode              ps                       zmore
kill                  pwd                      znew
kmod                  rbash
less                  readlink
root@ubuntu:/home/matt/Hi3516A_SDK_V1.0.6.0# sudo dpkg-reconfigure dash  //更改链接  
执行之后要选择no才行


接下来就按照使用说明安装即可,遇到权限不够就用sudo



这篇关于新路程--------安装海思Hi3516A/Hi3516D SDK出现问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134544

相关文章

python管理工具之conda安装部署及使用详解

《python管理工具之conda安装部署及使用详解》这篇文章详细介绍了如何安装和使用conda来管理Python环境,它涵盖了从安装部署、镜像源配置到具体的conda使用方法,包括创建、激活、安装包... 目录pytpshheraerUhon管理工具:conda部署+使用一、安装部署1、 下载2、 安装3

关于@MapperScan和@ComponentScan的使用问题

《关于@MapperScan和@ComponentScan的使用问题》文章介绍了在使用`@MapperScan`和`@ComponentScan`时可能会遇到的包扫描冲突问题,并提供了解决方法,同时,... 目录@MapperScan和@ComponentScan的使用问题报错如下原因解决办法课外拓展总结@

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

C#使用HttpClient进行Post请求出现超时问题的解决及优化

《C#使用HttpClient进行Post请求出现超时问题的解决及优化》最近我的控制台程序发现有时候总是出现请求超时等问题,通常好几分钟最多只有3-4个请求,在使用apipost发现并发10个5分钟也... 目录优化结论单例HttpClient连接池耗尽和并发并发异步最终优化后优化结论我直接上优化结论吧,

Java内存泄漏问题的排查、优化与最佳实践

《Java内存泄漏问题的排查、优化与最佳实践》在Java开发中,内存泄漏是一个常见且令人头疼的问题,内存泄漏指的是程序在运行过程中,已经不再使用的对象没有被及时释放,从而导致内存占用不断增加,最终... 目录引言1. 什么是内存泄漏?常见的内存泄漏情况2. 如何排查 Java 中的内存泄漏?2.1 使用 J

numpy求解线性代数相关问题

《numpy求解线性代数相关问题》本文主要介绍了numpy求解线性代数相关问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 在numpy中有numpy.array类型和numpy.mat类型,前者是数组类型,后者是矩阵类型。数组

解决systemctl reload nginx重启Nginx服务报错:Job for nginx.service invalid问题

《解决systemctlreloadnginx重启Nginx服务报错:Jobfornginx.serviceinvalid问题》文章描述了通过`systemctlstatusnginx.se... 目录systemctl reload nginx重启Nginx服务报错:Job for nginx.javas

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

Redis缓存问题与缓存更新机制详解

《Redis缓存问题与缓存更新机制详解》本文主要介绍了缓存问题及其解决方案,包括缓存穿透、缓存击穿、缓存雪崩等问题的成因以及相应的预防和解决方法,同时,还详细探讨了缓存更新机制,包括不同情况下的缓存更... 目录一、缓存问题1.1 缓存穿透1.1.1 问题来源1.1.2 解决方案1.2 缓存击穿1.2.1

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20