嵌入式linux开发——开发环境搭建(NFS共享, 交叉编译)

时间:2021-02-01 14:57:16


      一个良好的调试对于开发是及其重要的。“环境搭好了,基本就算入门了”,我是这样认为的。嵌入式开发免不了使用“交叉编译”的环境,以及开发主机与开发板之间的文件传输。


环境

     开发主机:Arch-linux 64位

     开发板Beaglebone black:Debian wheezy


交叉编译器(主机上安装)


     依赖库(64位系统需要):

         lib32-glibc, lib32-libstdc++5, lib32-ncurses, lib32-zlib

因为我的主机是64位的arch,对应的32位库应该就是这些了,其他系统参照:【EEWIKI】:http://eewiki.net/display/linuxonarm/BeagleBone+Black

     编译器: 

            下载地址:https://launchpad.net/linaro-toolchain-binaries/trunk/2013.10/+download/gcc-linaro-arm-linux-gnueabihf-4.8-2013.10_linux.tar.xz

             解压,设置环境变量,参照【EEWIKI】。可以将下面的环境变量写入~/.bashrc中:

CC=specified directory/gcc-linaro-arm-linux-gnueabihf-             

             我写了个hello.cpp,然后 ${CC}gcc hello.cpp -o hello,chmod +x hello,就得到了一个之后可以在 'bone 上运行的hello程序。


NFS共享服务


      主机(Arch):

            参照下面的链接,(1)安装nfs-utils,(2)修改/etc/exports,(3)sudo exportfs -ra(4)sudo systemctl start rpc-idmapd && sudo systemctl start rpc-mountd 

https://wiki.archlinux.org/index.php/NFS_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87)

     'bone(Debian):

             参照下面的链接,(1)安装nfs-common,(2)mount -t nfs4 192.168.7.1(主机IP):/test /root/nfs/test

https://wiki.debian.org/NFS/Kerberos

      至此,就可以在/mnt/music下看到共享的文件了。你可以将你之前编好的hello程序拷贝到共享目录,运行./hello:

                 root@arm:~/nfs/test# ./hello 
                 Hello Beaglebone!