发 帖  
原厂入驻New
申请华秋企业认证 多层板首单免费打样!
30s提交资料,10分钟通过审核(免费赔付+顺丰包邮)>>立即报名
[话题] 【EVB-T335开发板试用体验】2、开发环境搭建+踩坑纪录
2017-3-6 21:20:16  2541 虚拟机 Linux
分享
本帖最后由 jackeyt 于 2017-3-7 11:05 编辑

试用目录:
1、【EVB-T335开发板试用体验】+1开箱上电



此贴是【EVB-T335开发板试用体验】的第二篇:开发环境的搭建与踩坑纪录;主要包括以下内容:
一 软件安装
1 VMWare WorkStation虚拟机的安装
2 Ubuntu操作系统的选择与安装
3 Xshell串口终端的安装
二 开发环境
1 VMWare-tools的安装
2 Samba的安装

3 PC、Ubuntu、开发板三者互ping
4 ssh、NFS的安装与挂载

三 交叉编译工具链的安装与使用
1 ARM-linux-gnueabihf- 工具链的安装
2 arm-none-linux-gnueabi- 工具链的安装
3 64位机安装交叉工具链的踩坑纪录
4 交叉编译工具的测试使用





一 软件安装
1 VMWare WorkStation虚拟机的安装

  VMware Workstation
是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的最佳解决方案。通常是在Window下安装VMware Workstation,然后在VMware Workstation下安装类Linux操作系统,如Ubuntu、Redhat、CentOS、Fedora等。与VMware Workstation类似功能的还有VirtualBox等。

本次楼主选用的虚拟机软件版本为VMware-workstation-full-10.0.1-1379776版本。
具体安装教程比较通用,不是本贴的主要讨论内容。详情可见百度教程:VMware Workstation虚拟机怎么安装


2 Ubuntu操作系统的选择与安装
  Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的开源GNU/Linux操作系统,Ubuntu 是基于DebianGNU/Linux,支持x86、amd64(即x64)和ppc架构,由全球化的专业开发团队(Canonical Ltd)打造的。
  其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,类似儒家“仁爱”的思想,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观。
  Ubuntu基于Debian发行版和GNOME桌面环境,而从11.04版起,Ubuntu发行版放弃了Gnome桌面环境,改为Unity,与Debian的不同在于它每6个月会发布一个新版本。Ubuntu的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu具有庞大的社区力量,用户可以方便地从社区获得帮助。Ubuntu对GNU/Linux的普及特别是桌面普及作出了巨大贡献,由此使更多人共享开源的成果与精彩。

本次楼主选择的版本是ubuntu-16.04-desktop-amd64
PS:也正是因为此版本,才有了后面的开发环境搭建之坑。

3 Xshell的安装
   Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及microsoft Windows 平台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。Xshell可以在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。
Xshell 和SecureCRT的比较:
  Screen不会闪屏,并且可以回滚,这个功能比较好用。Script的执行顺序可以调整,SecureCRT的这个功能相较而言比较死板,不过可以同时发送指令到多个session,这个功能较好。键盘映射的兼容性比较好,不需要自己去改映射,可以展现tunnel等。支持布局切换,像gnome-terminal。缺憾是对Unicode制表符支持不够好,内置的sftp不怎么符合用户的操作习惯(该公司有另外的xftp)。许可相对便宜,对个人、教育用户是免费的。

PS:Xshell安装地址:链接地址
二 软件安装
1 VMWare-tools的安装

   vmware tools是虚拟机VMware Workstation自带的一款工具,现在介绍ubuntu linux安装VMare tools。它的作用就是使用户可以从物理主机直接往虚拟机里面拖文件。如果不安装它,我们是无法进行虚拟机和物理机之间的文件传输的。
   主要步骤是:打开Vmwave-station软件->运行相应的linux主机->选择vm软件菜单栏上的“虚拟机(M)”->安装Vmare Tools

   到这一步后,会自动将Vmare Tools挂载到ubuntu的光盘下,接下来,主要接运行自动安装脚本即可,然后一路回车就行了,详细教程请参考:百度教程
2 Samba的安装
首先输入安装指令:
  1. sudo apt-get install samba samba-common
复制代码
然后提示,输入“Y”,然后一路回车之类的自动安装即可。
   其次,建立共享文件夹,如楼主的:
  1. sudo mkdir /home/jackeyt/SharedX
复制代码
以建立ShareX文件夹;
  再者,需要再改相应的权限:
  1. sudo chmod -R 777 /home/jackeyt/SharedX
复制代码

  最后可以一步到位,直接右键选择该文件夹,选择“本地网络共享”选项,打好相应选项的勾,如下图所示:
QQ截图20170306223723.png

此时,在windows下面,打开网络中心,即可以看到共享文件夹了:
QQ截图20170306225912.png
此时,可以在windows下打开此文件夹,然后随便测试下新建个文件,文件夹之类。然后回ubuntu查看数据是否准备。

3 PC、Ubuntu、开发板三者互ping

    首先,ubuntn与PC主机的网络设置可设为:“桥接模式”,然后将用网线将EVB-T335开发板与路由器相连,此时,Windows、ubuntu、开发板三者都处于同一网关下,由于windows与ubuntu一般都是设为DHCP,现只需要设置开发板的ip,网关等,即可。
   输入:
  1. IFconfig eth1 192.168.2.118 up
复制代码
(根据实际路由器情况进行修),如下图所示:
QQ截图20170305093901.png

  然后,测试一下能否ping通ubuntu主机:
  1. ping 192.168.2.108
复制代码
结果如图所示:
QQ截图20170305093915.png

即可以表示,开发板至ubuntu的网络通了,同理,可以依次在windows与开发板之间,windows与ubuntu之间再互相ping,观察结果。

4 SSH、NFS的安装与挂载
之所以选择在ubuntu上安装SSH,一是方便:不用在虚拟机与windows间频繁的切换,二是统一,直接使用Xshell即可以访问开发板跟ubuntu,统一管理,简洁高效。
输入:
  1. sudo apt-get install openssh-server
复制代码
即可安装SSH服务。
    接着,启动SSH服务:
  1. sudo service ssh start
复制代码
此时,可以在Xshell下建立一个SSH连接至ubuntu ,查看是否连接成功,以测试链路通畅与否。

  NFS的安装与挂载

  nfs(network file system)网络文件系统,通过网络使不同机器或者操作系统之间分享部分文件,嵌入式软件开发中多用于宿主机和目标机之间的文件分享。

安装nfs:
  1. sudo apt-get install nfs-kernel-server
复制代码
新建nfs文件夹:
  1. sudo mkdir /home/jackeyt/SharedX/nfs
复制代码
配置nfs:
  1. /home/jackeyt/SharedX/nfs  *(rw,sync,no_root_squash,no_subtree_check)
复制代码
PS:按实际情况修改相应的目录。
重启服务:
  1. sudo /etc/init.d/rPCBind restart                      //重启rpcbind
  2. sudo /etc/init.d/nfs-kernel-server restart        //重启nfs
复制代码
测试:
  1. sudo mount -t nfs 192.168.2.118:/home/jackeyt/SharedX/nfs   /mnt/nfs
复制代码


经过以上测试后,可以开始在开发板上挂载了:
  1. mount -n -o nolock 192.168.2.108:/home/jackeyt/SharedX/nfs  /mnt
复制代码

QQ截图20170305093925.png


  接下来,输入ls,或者读写文件以测试,查看是否有没相应的文件:
QQ截图20170305094403.png


QQ截图20170305094516.png

QQ截图20170305094640.png

QQ截图20170305095251.png
QQ图片20170305094909.png

三 交叉编译工具链的安装与使用
     
      使用的都是EVB-T335开发板自带资料包里面的toolchains,将此文件夹,利用前方提到的网络共享方法,上传至Ubuntu下,然后解压:
  1. sudo tar -jxf gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-201303013_linux.tar.bz2 -C /opt/
  2. sudo tar -jxf arm-2010.09.tar.bz2 -C /opt/
  3. export PATH=/opt/arm-2010.09/bin:$PATH
  4. export PATH=/opt/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-201303013_linux/bin:$PATH
复制代码

QQ截图20170305104117.png


完成以上步骤之后,按道理来说,在终端中输入:arm-linux-gnueabi- 再按下TAB键就会出现如下图所示的结果:

QQ截图20170305105710.png


重点来了!按道理来说,到了这一步,交叉编译工具链已经搭建成功了!但是我们输入命令进入编译时却出错了!

踩坑开始!


3 64位机安装交叉工具链的踩坑纪录

输入
  1. arm-linux-gnueabi-gcc
复制代码
结果却提示,不存在!!!
QQ截图20170305105721.png



  没办法,只能上度娘上google一下,发现是因为64位机的原因,前文已经埋下伏笔了,坑啊!!
  
    所幸的是,有解决方法!
    我们只需安装好兼容包即可了!
  1. sudo apt-get install lsb-core
复制代码
    然后按提示,一路回车安装即可!
QQ截图20170305105840.png

一顿瞎操作之后,你以为这就可以啦?没那么容易,我们再次测试:arm-linux-gnueabi-gcc   错误仍在!


我们继续来,输入:

  1. sudo apt-get install lib32stdc++6
复制代码

QQ截图20170305110511.png

耐心等待下载完毕后,再次查看:

  1. arm-linux-gnueabi-gcc -v
复制代码
  结果如下图:

QQ截图20170305110834.png


  说明,到这里已经搞定了!  再次输入:
  1. arm-linux-gnueabi-gcc
复制代码
此时,提示缺少输入文件,则代表没有问题了。
QQ截图20170305110846.png

OK!接下来,就测试一下,官方自带的test_code,观察硬件结果是否正常。



4  交叉工具链的测试使用


     以下以官方给的测试程序——蜂鸣器为测试对象   


     首先,先确保以上nfs环境搭建没有问题之后,在Xshell使用ssh远程登录 到ubuntu主机下面,然后切换到源码目录:
  1. cd evb-ti335x/test_code/buzzer/
  2. ls
复制代码
可以看到,结果只有:
      QQ截图20170305112433.png

   
并没有可执行程序,因此,在这里,输入编译指令,生成我们的测试程序即可!
  1. arm-linux-gnueabihf-gcc -o buzzer buzzer.c
复制代码

再次查看该目录下有没有相应的可执行程序。
QQ截图20170305112535.png


可以看到已经生成了相应的可执行程序了。



接下来,只需切换至开发板相应的目录下即可!

然后,直接运行该可执行程序。

QQ截图20170305112644.png


此时就可以听到开发板上的蜂鸣器发声了,至此,测试完成了!开发环境搭建成功了!


0
2017-3-6 21:20:16   评论 分享淘帖
6 个讨论
很完整的分享啊  不错不错
2017-3-7 11:25:33 评论

举报

为初学者造福  感谢分享
2017-3-7 11:25:51 评论

举报

倪love 发表于 2017-3-7 11:25
为初学者造福  感谢分享

是的,个人感觉挺适合新手的
2017-3-7 11:39:05 评论

举报

楼主不错
nfs配置文件:/etc/exports
2017-10-12 11:24:46 评论

举报

感谢楼主的支持   楼主辛苦了      关注盈鹏飞嵌入式公众号  第一时间为您提供 产品咨询  技术文章  新产品试用活动  在线技术支持等....盈鹏飞嵌入式的发展  离不开广大友友的支持
谢谢关注
盈鹏飞二维码.jpg
2017-11-15 10:13:14 评论

举报

只有小组成员才能发言,加入小组>>

30个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /5 下一条

快速回复 返回顶部 返回列表