ubuntu下安装嵌入式开发常用工具或库

嵌入式linux开发需要一台linux PC,如ubuntu,centOS等。同时需要安装一些工具和库,方便开发和交叉编译开源库。

1)ssh
sudo apt-get install openssh-server

2)samba:
sudo apt install samba
假设Ubuntu的用户default,设置为免密码,则
a). vim /etc/samba/smb.conf 在最后追加如下:
      security = share
      [x64_work]
      path = /home/default/work
      available = yes
      browsealbe = yes
      public = yes
      guest ok = yes
      writable = yes
      create mask = 0755
      directory mask = 0755
      force user = default
b). sync
c). /etc/init.d/samba restart或者sudo service smbd restart等

3)vim: PC上不要再使用vi
sudo apt-get install vim

4)gcc/g++:
sudo apt-get install build-essential

5)串口工具
sudo apt-get install cutecom
或者古老的sudo apt-get install minicom

6)git/svn
sudo apt-get install git
或sudo apt-get install subversion

7)编译linux内核  需要安装ncurses库、mkimage工具等
sudo apt-get install libncurses5-dev ncurses-term libncursesw5-dev
sudo apt-get install uboot-mkimage
现在貌似是sudo apt-get install u-boot-tools,才能安装

8)制作根文件系统需要安装mtd工具
如 mtd-utils等
apt-get install zlib1g-dev liblzo2-dev uuid-dev
到http://www.linux-mtd.infradead.org/source.html下载source
解压
export WITHOUT_XATTR=1  或者make后面加入CFLAGS编译选项"-DWITHOUT_XATTR"
make
make install

        而,ubuntu16.04本地gcc编译mtd-utils时(在pc上运行)出现.....bin/as: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory错误
可安装:
sudo apt-get install lib32z1

9)编译开源代码,如,含有m4、autoconfig、automake等配置文件,需要运行./autogen.sh
sudo apt-get install autoconf automake libtool

某些开源代码还会依赖openssl,如sudo apt-get install libssl-dev openssl 等

10)安装nfs服务器
a). sudo apt-get install nfs-kernel-server portmap
b). sudo vim /etc/experts在最后添加如下内容:
/home/default/work/nfs_rootfs/  *(rw,sync,no_root_squash)
c). sudo /etc/init.d/nfs-kernel-server restart  ,重启服务
d). 单板挂载:假设pc的ip为172.16.129.110,则以下命令将pc的nfs_rootfs目录挂载到单板的mnt目录下,另外自行查询nfs不同版本间的挂载命令差异,例如  mount -t nfs -o intr,nolock,rsize=1024,wsize=1024 172.16.129.110:/home/default/work/nfs_rootfs /mnt

或者mount -t nfs -o nolock,nfsvers=3,vers=3 172.16.129.110:/home/default/work/nfs_rootfs /mnt 等

 

另外,windows(如WIN7等)也可以用HaneWinNFSServer软件(https://download.csdn.net/download/litao31415/11960832)开启nfs服务:
修改安装目录下(nfsd)的exports文件:
  C:\Users\xxxx\Desktop\code -public -name:my_nfs
即导出C:\Users\xxxx\Desktop\nfs文件夹,属性为可读写,同时定义nfs client观察到的路径名为my_nfs

修改好exports后需要管理员权限运行RestartService.bat脚本:

@echo off
cd
echo 正在重启服务,请稍候……
net stop nfsserver
net stop pmapdaemon
net start pmapdaemon
net start nfsserver
echo 完成
pause


此时可以在开发板上将win7下的code文件夹(挂载时使用my_nfs名字即可)挂载到/tmp/nfs下
mount -t nfs -o vers=3,proto=tcp,nolock 172.16.129.25:/my_nfs /tmp/nfs
嵌入式开发中HaneWinNFSServer只用于替代tftp,不建议直接在这个目录下进行开发,毕竟windows系统下文件是不区分大小写的,同时软链接会实体化,更离谱的是,文件夹软链接变成文件而不是文件夹!!

 

 

持续更新----------------------------------------------------------------------------------------------------------------------------------------------




ps:如果使用的是虚拟机,分配的内存太小时会出现gcc内部错误,需要使用swap

出现内存空间不够时,需要申请swap空间,如
    sudo dd if=/dev/zero of=/swapfile bs=64M count=16
    #count的大小就是增加的swap空间的大小,64M是块大小,所以空间大小是bs*count=1024MB = 1GB
    sudo mkswap /swapfile
    #把刚才空间格式化成swap格式
    sudo swapon /swapfile
    #使用刚才创建的swap空间

 

另外,ubuntu18.04的64位如果要安装兼容32的库(wrong ELF class: ELFCLASS64),需要安装:

sudo apt-get install lib32ncurses5 ​lib32z1

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值