菜鸟搭建zynq linux开发平台

本人机械出生,毕业后先做了两年FPGA,然后做IC开发,所以对linux一窍不通。无奈来了一家小公司,所有的环境都要自己搭,这里将自己的坑全部献上,希望能提供一些借鉴
第一步: 安装虚拟机
        1、注意事项
             linux的版本 ubuntu 14.04--16.04,32bit-64bit 等很多个版本需要事先确定
        2、系统需要安装的必要软件
         此处我借助的zynq平台时深圳米尔科技提供的7z015开发板,技术支持不错,但是资料写得很烂,挖了很多坑。
         首先我用VMstation 安装的的ubuntu 16.04 32bit的linux系统。
         坑1:我window用的时64bit的系统,因此我一直安装的都是64bit的linux,后来发现gcc 一直用不了,请教了公司大神,原来开发板厂商提供的就是32bit的工具(xilinx也有提供,但是我没有去找64bit的版本),因此gcc一直用不起来,后来换了32bit才好用
         坑2: linux用的14.04到14.10,装软件时,sudo apt-get update 更新一直出错,换了好多sources.list的源 一直都不行
         解决方案: 如果用14.10 找清华的源可以(测试可用)。另外不用盲目用网上的源,这些源大多都已经过期,亲们可以自己把链接打开看看,如果链接能正常打开,这个源才有用,不然update 肯定报错
         坑3:很长一段时间,本机的文件无法传给虚拟机,虚拟机和本地window之间文件共享不成功
         解决之道:以VMstation 为例子。安装好vmtools后,然后设置共享目录即可。
                            步骤:在VM的window安装目录下一般会有vmtools的linux安装源文件一般是iso后缀的文件。
                                       在VMstation工具中,点击虚拟机----安装VMware Tools,则iso文件会被自动加载到linux的光驱中。再到linux系统中,从桌面系统中,找到光驱,然后找到里面的文件,将光驱内所有文件复制到自己的某个文件夹内,通过运行./vmware-install.pl就可以安装了。
       3、VMtools 安装好后,设置window共享文件。linux虚拟机就可以访问这个文件夹了。
             坑4:很多linux的文件不要在window内解压,也不要在window和linux共享的文件夹内解压,因为这个文件夹本质上属于window,解压后会报错说无法建立超链接,但是如果把这些镜像文件或者压缩文件拷linux虚拟机的文件系统内解压,则一切正常。
第二: 搭建虚拟机(linux)------windows-------开发板的文件共享系统
          1、在虚拟机上安装nfs服务器。rpm -ivh nfs-utils-1.0.1-2.9.i386.rpm portmap-4.0-54.i386.rpm 相当于把虚拟机的linux作为服务器使用(或者sudo apt-get install nfs-kernel-server  这个命令会安装两个软件包nfs-common和portmap。设置虚拟机上的共享目录。vim /etc/exports  这里需要在这个文件后面添加需要共享的目录(如:“/home/work *(rw,sync,no_root_squash,no_subtree_check)”双引号以内的东西,双引号不算。* 号表示时任意ip,也可以是192.168.1.* 等 表示IP时192.168.1.任意数。 这里记住*后面直接接括号,没有空格),后用 exportfs  -rv命令使得设置的共享目录生效。然后命令一、sudo service portmap restart  命令二、sudo service nfs-kernel-server restart。 顺序不反就可以了。 
          2、设置网络桥接模式。在VMware station设置为桥接模式而不是NAT模式。桥接模式,意味着linux虚拟机在局域网中和window主机时地位等价的,有自己的IP。而NAT模式意味着,linux虚拟机的网络访问要依赖windows。而我们的目的时开发板和linux虚拟机能通过局域网路由器正常访问,并且处于同一局域网IP域内。因此我们必须设置为桥接模式。
         3、启动开发板。
           链接开发板的网口到局域网内。开发板上电后,linux正常起来。root登陆后。通过ifconfig 看一下网络状况和IP地址。一般而言,eth0未启动。我们这里用ifconfig eth0 up 先启动eth0,然后用udhcpc命令自动获取开发板的ip。再通过ifconfig eth0 看开发板在局域网内的IP。
          4、获取window linux虚拟机和开发板的IP地址,相互ping通。如果通过后。
          5、挂载linux虚拟机的文件夹。
              在开发板的终端输入: mount -o nolock,rw -t nfs 192.168.2.119:/home/work    /mnt/nfs
               一定要记住  加上 -o nolock
             另外,命令中的ip地址是虚拟机的地址,文件夹时虚拟机服务器用来共享的文件夹。 /mnt/nfs 是开发板用来挂载共享文件夹的地址。以后这两个文件夹就可以同步了。在虚拟机编译好的文件可以放到这个文件夹下,直接运行。
第三步: 安装gcc工具
          一般厂商都提供了gcc工具,我们需要做的时制定PATH 告诉linux ,GCC在哪里就好
             export PATH=$PATH:<WORKDIR>/Toolchain/CodeSourcery/Sourcery_CodeBench_Lite_for_Xilinx_GNU_Linux/bin
用这个命令,将gcc工具的路径添加到PATH里面,然后就可以用gcc编译了。通过上面几步,楼主的helloword时可以正常跑的,
  

      


          
    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章