嵌入式Linux常用开发工具

嵌入式 Linux  应用开发

一、发行版 Linux  介绍

Linux 发行版(英语:Linux distribution,也被叫做 GNU/Linux 发行版),为一般用户预先集成好的Linux 操作系统及各种应用软件。一般用户不需要重新编译,在直接安装之后,只需要小幅度更改设置就可以使用,通常以软件包管理系统来进行应用软件的管理。Linux 发行版通常包含了包括桌面环境、办公包、媒体播放器、数据库等应用软件。这些操作系统通常由 Linux 内核、以及来自 GNU 计划的大量的函数库,和基于 X Window 的图形界面。有些发行版考虑到容量大小而没有预装 X Window,而使用更加轻量级的软件,如:busybox,UClibc 或 dietlibc。现在有超过 300 个 Linux 发行版(Linux 发行版列表)。大部分都正处于活跃的开发中,不断地改进。
由于大多数软件包是自由软件和开源软件,所以 Linux 发行版的形式多种多样——从功能齐全的桌
面系统以及服务器系统到小型系统(通常在嵌入式设备,或者启动软盘)。除了一些定制软件(如安装和配置工具),发行版通常只是将特定的应用软件安装在一堆函数库和内核上,以满足特定用户的需求。
这些发行版可以分为商业发行版,比如 Ubuntu(Canonical 公司)、Fedora(Red Hat)、openSUSE(Novell)和 Mandriva Linux;和社区发行版,它们由自由软件社区提供支持,如 Debian 和 Gentoo。 

二、常用工具

建议用xshell等软件连接虚拟机后安装这些工具,因为虚拟机的粘贴板与本机的粘贴板是不共用的,安装需要大量的cv操作,不能复制粘贴就很烦

net-tools 

从 ubuntu18.04 版本开始,在系统中默认不支持 ifconfig 命令进行网络状态查看。需要安装 net-tools方可使用。

安装命令

linux@ubuntu:$ sudo apt-get update
linux@ubuntu:$ sudo apt install net-tools

 vim 

系统安装完成后自带的文本编辑器是 vi 编辑器,推荐使用 vim 编辑器进行文本编辑 

安装命令

linux@ubuntu:$ sudo apt-get update
linux@ubuntu:$ sudo apt-get install vim

为了后续开发方便可以为 vim 安装一些辅助插件

 将jeffy-vim-read.tar.gz 压缩包导入到虚拟机中 

解压缩

linux@ubuntu:$ tar -xvf jeffy-vim-read.tar.gz

解压成功后会得到 jeffy-vim-read 文件夹,进入该文件夹下进行插件安装。

linux@ubuntu:$ ./install.sh

 这里讲下如何将Windows下的文件传入虚拟机,我使用了finalshell,与虚拟机建立ssh连接,finalshell自带文件传输功能,当然用其他工具也可以,自行查阅下传输方法

 这里的用户名及密码填写你对应虚拟机的用户名和密码

遇到一个问题:

虚拟机ifconfig后没有ip地址显示,或者是在Windows命令行下ip ping不通

问题解决:                                                                          

linux终端输入命令sudo dhclient ens33(ens33相对应你的网卡,我的是ens33)获得ip地址

再次输入ifconfig就可以看到ip地址了

Windows命令行下如果能ping通此ip,即可ssh连接

 ctags

安装命令

linux@ubuntu:$ sudo apt-get install ctags

 openssh

安装命令

linux@ubuntu:$ sudo apt-get update
linux@ubuntu:$ sudo apt-get install openssh-server

 TFTP 服务器

linux@ubuntu:$ sudo apt-get update
linux@ubuntu:$ sudo apt-get install tftp-hpa tftpd-hpa

在根目录下建立 tftp 工作目录

linux@ubuntu:$ sudo mkdir /tftpboot

修改 tftpboot 文件夹权限 

linux@ubuntu:$ sudo chown linux:linux /tftpboot/
linux@ubuntu:$ sudo vi /etc/default/tftpd-hpa

 将 TFTP_DIRECTORY="/var/lib/tftpboot"修改为 TFTP_DIRECTORY="/tftpboot"

重启 tftp 服务 

linux@ubuntu:$ sudo service tftpd-hpa restart

 NFS  服务

linux@ubuntu:$ sudo apt-get update

 安装 NFS 服务器端

linux@ubuntu:$ sudo apt-get install nfs-kernel-server

安装 NFS 客户端 

linux@ubuntu:$ sudo apt-get install nfs-common

建立 NFS 共享目录

linux@ubuntu:$ sudo mkdir /source
linux@ubuntu:$ sudo chown linux:linux /source
linux@ubuntu:$ mkdir /source/rootfs

 添加共享目录

linux@ubuntu:$ sudo vi /etc/exports

若需要把 “/source/rootfs” 目录设置为 NFS 共享目录,在该文件末尾添加下面的一行 

/source/rootfs *(rw,sync,no_root_squash,no_subtree_check)

注意这里不要打错字了,如果后续restart(重启)命令执行fail(失败),大概率是这里写错了 

 使能 NFS V2 版本

linux@ubuntu:$ sudo vi /etc/default/nfs-kernel-server

 在文件的最后添加下面的配置

RPCNFSDOPTS="--nfs-version 2,3,4 --debug --syslog"

 重启 NFS

linux@ubuntu:$ sudo /etc/init.d/nfs-kernel-server restart

开发工具安装

linux@ubuntu:$ sudo apt-get update

linux@ubuntu:$ sudo apt-get install gawk wget git diffstat unzip texinfo gcc-multilib chrpath socat cpio

python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping build-essential

linux@ubuntu:$ sudo apt-get install libsdl1.2-dev xterm

linux@ubuntu:$ sudo apt-get install make xsltproc docbook-utils fop dblatex xmlto

linux@ubuntu:$ sudo apt-get install python-git-doc

linux@ubuntu:$ sudo apt-get install ncurses-dev libncurses5-dev libncursesw5-dev lib32ncurses5 libssl-

dev linux-headers-generic u-boot-tools device-tree-compiler bison flex g++ libyaml-dev
linux@ubuntu:$ sudo apt-get install python-crypto

linux@ubuntu:$ sudo apt-get install coreutils bsdmainutils sed curl bc lrzsz corkscrew cvs subversion

mercurial nfs-common nfs-kernel-server libarchive-zip-perl dos2unix texi2html diffstat libxml2-utils

linux@ubuntu:$ sudo apt-get install default-jre

linux@ubuntu:$ sudo apt-get install libyaml-dev libpython2.7-dev

linux@ubuntu:$ sudo apt install python3-pyelftools

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值