海思HI3518ev200环境搭建和SDK编译------环境搭建

最近在学习海思的3518e芯片,编译SDK时候,走了很多坑,今天做一个笔记把所有的坑记录下来,方便大家搭建环境时候和初次学习有帮助。
我的电脑配置:
1、window 7 系统
2、vm 虚拟机 V10.0版本
3、Ubuntu 为16.04 版本
4、网络连接方式为: 桥连接
芯片:
1、hi3518e
2、SDK为 Hi3518E_SDK_V1.0.4.0
Ubuntu 16.04映像文件:
链接:https://pan.baidu.com/s/1q9jfnn92hPbypNYNk5d7tQ
提取码:2bai
一、vm虚拟机安装和Ubuntu系统映射
此处就不多加记录,网上一大堆资料。大家百度一下就能全部出来。
主要注意的是: 安装vm tools以后,设置共享文件夹,文件夹无法显示,但是有/mnt/hgfs/ 这个路劲,这个需要安装一个patch 包
指令:1、sudo apt-get install open-vm-tools
指令 2、sudo vmhgfs-fuse .host:/ /mnt/hgfs

3、设置共享文件开机自动挂载(我的虚拟机,每次开机都找不到共享文件夹,需要设置,大家同样情况,可以百度进行设置)
然后重启虚拟机即可。

这个步骤不一定适用所有人,大家可以自行百度一下解决。
二、配置网络 ip 地址为静态

   配置ip地址为静态,只要是为了开发板能和虚拟机连接和ping 通,这样方便后面的tftp 下载和烧录,这个步骤最好前期跳过,因为设置成功以后,后面apt-get 软件会联网失败。
   设置如下:
          1、ifconfig 一下,看看自己ip 是多少,这里我的ip是192.168.1.106,那么我就设置成这样
          ![在这里插入图片描述](https://img-blog.csdnimg.cn/5f8cdbfac6654213a4cf68d8ebf06092.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MTM4MDQxNA==,size_16,color_FFFFFF,t_70)

          2、指令 sudo  gedit /etc/network/interfaces
          3、文件后面添加如下 :
auto ens33
iface ens33 inet static
address 192.168.1.106
netmask 255.255.255.0
gateway 192.168.1.1

#dhcp
#auto ens33
#iface ens33 inet dhcp

在这里插入图片描述
4、重启网卡既可以: sudo /etc/init.d/networking restart

三、git http 失败
我在适用 git http时候,总是无法连接,所有设置都正常,原因是需要取消HTTPS 和 http的代理。指令如下:
1、 git config --global --unset http.proxy
2、 git config --global --unset https.proxy

四、安装arm-linux-gcc-4.4.3
大家可以网盘提取:
链接:https://pan.baidu.com/s/1oni1eKGCBSQ7ZudP2V3dow
提取码:azcb
安装步骤:
1、拷贝压缩文件到虚拟机共享文件里面
2、解压: sudo tar -zxvf arm-linux-gcc-4.4.3.tar.gz -C / # 注:-C 后面有空格
3、将 /opt/FriendlyARM/toolschain/目录下的4.4.3 copy 至 /usr/local/ 目录下新建arm目录下,如下:
cd /usr/local
sudo mkdir arm
sudo chmod 777 arm
sudo cp -r /opt/FriendlyARM/toolschain/4.4.3 /usr/local/arm
4.修改环境变量,将把arm-linux-gcc添加到PATH中。有三种方式,我这边适用了 1和2两种方式才成功,大家根据自己情况而定。
方法一:修改/etc/bash.bashrc文件,此文件只对当前用户适用
修改之前先root权限
sudo -s或sudo su -
sudo gedit /etc/bash.bashrc
在最后加上export PATH= P A T H : / u s r / l o c a l / a r m / 4.4.3 / b i n 保 存 , 退 出 , 然 后 刷 新 环 境 变 量 使 其 生 效 : s o u r c e / r o o t / . b a s h r c 方 法 二 : 修 改 / e t c / p r o f i l e 文 件 , 此 文 件 对 所 有 用 户 适 用 s u d o g e d i t / e t c / p r o f i l e 在 最 后 加 上 :   e x p o r t P A T H = PATH:/usr/local/arm/4.4.3/bin 保存,退出,然后刷新环境变量使其生效:source /root/.bashrc 方法二:修改/etc/profile文件,此文件对所有用户适用 sudo gedit /etc/profile 在最后加上: export PATH= PATH:/usr/local/arm/4.4.3/bin退使source/root/.bashrc/etc/profilesudogedit/etc/profile exportPATH=PATH:/usr/local/arm/4.4.3/bin
保存,退出,然后刷新环境变量使其生效:
source /etc/profile
方法三:修改/etc/environment文件
sudo gedit /etc/environment
在最后加上:/usr/local/arm/4.4.3/bin
保存,退出,然后重启系统

5.检查环境变量和编译器是否安装成功
echo $PATH
如输出:如果可以显示/usr/local/arm/4.4.3/bin,那么环境变量添加成功
6 检查arm-linux-gcc是否安装正确
arm-linux-gcc -v #正常会显示当前安装版本编号等
如输入arm-linux-gcc -v,输出如下错误:/usr/local/arm/arm-linux-gcc-4.4.3/bin/arm-linux-gcc: 15:exec:
/usr/local/arm/arm-linux-gcc-4.4.3/bin/.arm-none-linux-gnueabi-gcc: not found
原因:使用的是64位系统,但是编译工具是32位,需要安装32位支持库:
解决方案:命令行:sudo apt-get install lib32ncurses5 lib32z1
安装完,再次测试命令:arm-linux-gcc -v,正常情况下会输出如下:
在这里插入图片描述
7、更新最新库
命令行:sudo apt-get install lib32stdc++6

8、后面验证是否可以编译,大家百度找一下就行

五、安装TFTP服务
1、安装 tftp-hpa 和 tftpd-hpa :sudo apt-get install tftp-hpa tftpd-hpa
2、安装 xinetd sudo apt-get install xinetd
3、配置/etc/xinetd.conf,如果一样,不用更改
指令: gedit /etc/xinetd.conf

内容如下:
# Simple configuration file for xinetd
##
Some defaults, and include /etc/xinetd.d/
defaults
{#
Please note that you need a log_type line to be able to use log_on_success
# and log_on_failure. The default is the following :
# log_type = SYSLOG daemon info
}
includedir /etc/xinetd.d

4、配置/etc/default/tftpd-hpa
4.1、配置 tftp 服务器 :sudo vim /etc/default/tftpd-hpa
内容如下:

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s"

在这里插入图片描述
4.2 、在根目录下创建 tftpboot 文件
指令: cd /
mkdir tftpboot
sudo chmod 777 /tftpboot
4.3 、配置/etc/xinetd.d/tftp
指令:gedit /etc/xinetd.d/tftp
内容如下:

service tftp
{
socket_type = dgram
wait = yes
disable = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
#log_on_success += PID HOST DURATION
#log_on_failure += HOST
per_source = 11
cps =100 2
flags =IPv4
}

在这里插入图片描述
4.4、修改权限
sudo chmod -R 777 /tftpboot
4.5、重新启动一下服务。
执行次序:
sudo service tftpd-hpa restart
sudo /etc/init.d/xinetd reload
sudo /etc/init.d/xinetd restart

4.6、验证是否安装好
1、在tftpboot文件下面,使用指令:vim 1.c ,然后随便写入数据,保存以后,退出。然后,随便进入一个文件里面。
2、终端中输入 sudo tftp localhost,进入 tftp 命令符下
3、输入get 1.c ,然后使用q,退出
4、当前文件下,使用指令ls ,查看是否有1.c,如果有,说明成功

六、安装NFS
1、sudo apt-get install nfs-kernel-server
2、sudo apt-get install nfs-common
3、配置配置/etc/exports
gedit /etc/exports

注意:要先创建rootfs文件,这里,我创建在/root/rootfs, 指令:mkdir  root/rootfs ,然后更改文件权限,大家chmod 一下
文本末添加
/路劲/rootfs *(rw,sync,no_root_squash,no_subtree_check)
然后在终端执行 $chmod 777 -R /路劲/rootfs

在这里插入图片描述
4、sudo showmount -e
显示 clnt-create : RPC : Program not registered
sudo exportfs -r 更新
sudo showmount localhost -e
显示
Export list for 192.168.1.116
/root/rootfs
5、启用
sudo /etc/init.d/nfs-kernel-server restart 重启 nfs 服务
显示如下

  • Stopping NFS kernel daemon [ OK ]
  • Unexporting directories for NFS kernel daemon… [ OK ]
  • Exporting directories for NFS kernel daemon… [ OK ]
  • Starting NFS kernel daemon [ OK ]
    挂载测试
    $ mount -t nfs -o nolock localhost:/root/rootfs /mnt
    执行后,进入/mnt 目录中,如果可以看到/root/rootfs 中的内容,则说明 nfs 搭建成功!

到此,环境大家搭建成功,后面SDK编译,请看SDK编译笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值