嵌入式Linux系列第1篇:开发环境搭建

简介: Ublox ZED-F9P 厘米级定位模组开箱评估

01引言

很多做单片机开发的工程师因为各种原因可能要学习Linux,但是很多人刚开始却无从下手或者多次中途放弃,网上相关的资料虽然很多但是也比较零散、不系统。Linux嵌入式开发和普通裸机单片机开发有非常大的差异。本系列文章结合我个人的使用经验,站在一个完全初学者的角度为大家做一个整理,希望有助于大家快速入门嵌入式Linux开发。本篇是系列第一篇,为大家介绍开发环境的搭建。


02虚拟机安装

因为咱们大部分工程师平时都是使用Windows系统,所以这里就介绍在Windows系统下如何搭建Linux环境。当然你如果想在一台电脑上直接装Linux系统也是可以的,这里就不再介绍了。Windows系统如果要使用Linux通常需要安装一个虚拟机。目前,虚拟机最受欢迎的是VMware,除此之外还有一个VirtualBox,这两者大家择其一就行。我这里用的是Vmware。安装过程大家参考百度即可。


03虚拟机下Ubuntu系统安装

Linux系统有很多,比如Redhat,Centos等,目前用的比较多的是Ubuntu,首先下载一个Ubuntu镜像文件,我这里用的是ubuntu-16.04.3-desktop-amd64.iso,下载完成后,打开Vmware虚拟机进行Ubuntu系统的安装,Vmware和Ubuntu的关系是,Vmware是个虚拟机,它不仅可以安装Linux系统Ubuntu,还可以安装WinXP系统等。这个安装具体过程不再详细介绍,网上随便参考一个文章即可, 比如 。这个安装还是要耗费一定时间的。如果你觉得上述一步步安装太麻烦,你可以直接把我安装好的系统TopsemicUbuntu.zip下载下来,解压,然后打开VMwave,选择Open a Virtual Machine

选择TopsemicUbuntu文件夹 中的Ubuntu-Topsemic.vmx 文件

这样Ubuntu就直接被打开了,点击开启按钮就可以开机了,登录密码topsemic,开机后即可使用。是不是很方便啊。其实你刚下载的这个文件解压后里面包含以下这些文件,

你如果自己按照上面说的一步步安装ubuntu-16.04.3-desktop-amd64.iso,最后生成的也是这些东西,不过这样做有个好处,备份这个,以后万一哪天系统崩了或者换电脑了,直接用这个就行了,免去了重新安装和配置的烦恼。


04熟悉命令行操作

进入了Ubuntu系统,就可以展开工作了。Ubuntu系统进来之后是有图形化界面的,里面有各种应用,比如你可以打开浏览器上个百度看看,感觉和Windows差不多吧。

当然你更应该熟悉的是命令行操作,因为对于许多运行Linux系统的嵌入式设备是没有图形化界面的,这时你就只能通过命令行来操作了。鼠标点右键,选择打开终端(E),或者快捷键Ctrl+Alt+t 就可以打开命令行窗口了。

我们以一个实际的小任务来熟悉下Linux的命令吧,我们要实现的功能是:

1) 进入到/home/topsemic 目录下,查看该文件夹下的内容,在该文件夹下新建test1和test2两个文件夹;

2) 在test1文件夹下新建一个名为test1.txt的文件,里面的内容是welcome to topsemic.

3)显示test.txt中的内容在命令行窗口上;

4)将test1.txt 文件复制到test2文件夹下,重命名为test2.txt;

5)修改test2.txt中的topsemic为Beijing,并保存

6)删除test2.txt文件;

7)删除test1和test2整个文件夹

具体操作步骤如下:1)进入到/home 目录下,查看该文件夹下的内容用到cd和ls两个命令。/ 表示Linux的根目录,每个文件和目录都是从根目录开始的。

新建test1和test2两个文件夹用到mkdir指令. 执行完mkdir后,再用ls查看下,发现多了test1和test2两个文件夹。

小技巧:当你敲打命令时,要善于运用Tab键,比如当你想输入cd /home/topsemic,其实没必要每个字符都输入一遍,你可以敲cd /home/Tab键,这样只需要输入一个Tab键,topsemic就出来了。tab键可被用来补全命令或者文件名。2) 新建一个名为test1.txt的文件,里面的内容是welcome to topsemic. 这里我们使用vi指令,这个vi太重要了,一定要熟练掌握,不过刚开始你可能会觉得很别扭,熟悉熟悉就好了。a)先输入 vi test1.txt

进入到如下界面,这是vi的命令行模式,这时你如果输入welcome,是没有反应的,要输入内容必须先进入到文本输入模式。

b) 输入I,进入到文本输入模式,这时就可以输入文本了。输入完成后再按Esc键,返回到命令模式,然后输入 : (一个冒号)进入到尾行模式,再输入wq保存文件并退出。

3)显示test.txt中的内容在命令行窗口上,一是可以用vi查看,另外还可以用cat指令,直接输出到终端上

4)将test1.txt 文件复制到test2文件夹下,重命名为test2.txt;我们使用一条cp指令

这里用到.. 表示当前目录的上级目录。5)修改test2.txt中的topsemic为Beijing,并保存。还是使用vi指令,但是当你打开vi后,输入I然后要移动键盘向右的箭头→时,这时出来了一个C,这是怎么回事?

这个问题刚开始也困扰了我好久,参考 这个可以解决掉,不过有个问题是因为本身vi这时方向键和退格键是乱的,所以你如果还是用vi打开修改还是不好改。告诉大家一个方便的方法,先切换到root用户,使用sudo su 进入到root用户,密码还是topsemic

然后使用gedit /etc/vim/vimrc.tiny 打开vimrc.tiny文件,修改如下:


gedit是一个文本编辑器,类似Windows下的记事本。

之后再切换回topsemic用户,使用su -topsemic

这时再用vi操作就没有问题了。

6)删除test2文件夹的test1.txt文件, 删除使用rm 命令

7)删除test1和test2文件夹,删除文件夹也是rm命令,不过后面要跟上-r ,直接rm test1 是不行的

-r:递归的删除目录下面文件以及子目录下文件。



05结束语

刚接触Linux会很不适应,所以一定要多动手操作,等熟悉之后就会觉得很好用了。最后留给大家一个思考的问题,比如我想在/home 目录下建立一个test1文件夹,它会提示我无法创建、权限不够。

这是为什么呢?欢迎大家在评论区留言讨论。上述文章中提到的Vmware,ubuntu-16.04.3-desktop-amd64.iso,TopsemicUbuntu.zip 如果大家有需要,可以留言,我单独发给大家。下期会给大家介绍如何编译、运行一个C程序。

相关文章
|
25天前
|
JSON 机器人 Linux
推荐一款嵌入式Linux开源框架与封装-cpp-tbox
推荐一款嵌入式Linux开源框架与封装-cpp-tbox
54 3
|
1月前
|
Linux 开发工具 git
Linux嵌入式系统中如何使用U-Boot实例
Linux嵌入式系统中如何使用U-Boot实例
26 0
|
12天前
|
Linux 编译器 测试技术
嵌入式 Linux 下的 LVGL 移植
嵌入式 Linux 下的 LVGL 移植
|
26天前
|
Linux
嵌入式Linux系统(NUC980)tf卡出错处理errors=remount-ro改为errors=continue
嵌入式Linux系统(NUC980)tf卡出错处理errors=remount-ro改为errors=continue
7 1
|
26天前
|
安全 Linux
嵌入式Linux系统关闭串口调试信息的输出
嵌入式Linux系统关闭串口调试信息的输出
19 1
|
26天前
|
Linux 编译器 网络安全
嵌入式Linux移植dropbear
嵌入式Linux移植dropbear
19 3
|
26天前
|
存储 Ubuntu Linux
制作一个嵌入式Linux的应用程序升级文件
制作一个嵌入式Linux的应用程序升级文件
12 2
|
26天前
|
传感器 Linux API
嵌入式Linux串口编程简介
嵌入式Linux串口编程简介
19 1
|
1月前
|
存储 安全 Linux
嵌入式Linux系统bringup 启动全景解析
嵌入式Linux系统bringup 启动全景解析
70 0
|
1月前
|
Linux 编译器
Linux嵌入式系统之什么是交叉编译
Linux嵌入式系统之什么是交叉编译
17 0

热门文章

最新文章