<返回更多

搭建Linux C语言开发环境

2022-11-10  知乎  嵌入式er
加入收藏

linux开发环境上学习C语言,对于一个从零开始学习嵌入式的门外汉来说,是一个很好的选择,学习了C语言,又熟悉了Linux 操作系统。

1. 开发工具下载及安装:

虚拟机 VMware 10

下载地址:https://download3.vmware.com/software/wkst/file/VMware-workstation-full-10.0.0-1295980.exe

Ubuntu 12.04

下载地址:http://releases.ubuntu.com/12.04/

VMware虚拟机上安装在windows中的一个虚拟电脑的软件。因为我们需要用到linux的真实环境,又不能完全脱离windows的一些文件操作,再在虚拟机中安装Ubuntu 12.04系统。

安装步骤

 

注册

后一步要求输入许可证密钥,本站提供亲测可用的注册密钥,授权形式为批量,并且永不过期,即永久激活,注册码地址:http://www.ihacksoft.com/vmware-workstation-10-0.html

 

VMware Workstation 10另外一个特点是内置了简体中文,

如上图:在虚拟机上安装了ubuntu, windows和Linux切换起来非常方便

2. GCC编译环境的安装

1、gcc

要进行C语言编程,首先得有个C语言的编译器,Linux下常用的是GNU C Compiler gcc。

比如cpp-4.1和gcc-4.1、cpp-3.3和gcc-3.4

2、cpp

gcc要进行程序编译,首先需要进行一个预编译过程。该过程对程序源代码进行预处理。

3、libgcc1

gcc还依赖于libgcc1这个软件包。libgcc1是用于gcc软件自身的必须组件。

4、libc6

C语言程序要能够运行,需要一些运行时库文件和一些库文件操作命令。libc6这个软件包就是用来提供这些的。这个软件包几乎是Linux系统自带的,因为所有C程序的运行都离不开此软件包。

5、binutils

程序从源代码到可执行程序的过程中,必然需要一些工具来辅助完成。binutils软件包就是提供一些工具的,这个软件包提供下面这些非常有用的命令:

6、locales

这个软件包提供本地语言环境支持

虽然上面列了这么多必需的软件包,但实际上因为他们之间有依赖关系,所以在安装完系统后我们只需要输入下面一个命令:

apt-get install gcc

系统就会自动帮忙把这些软件包安装上。

2.在Ubuntu配置VIM配置编辑环境

编译和调试环境安装好了,该装编辑器了,VIM是个入门难,但用熟了会极大提高编辑效率的工具,其实入门也不算难,用一周基本长常用的20%的功能就都熟悉了,老样子用apt-get install vim安装,装好后运行vim命令,确保版本是7.1以上。装好后为了编辑方便,先启用语法高亮显示,自动缩进,显示行号等,用VIM编辑VIM的配置文件vim /etc/vim/vimrc,在末尾加上如下设置

1. syntax on

2. set autoindent

3. set cindent

4. set nu

先简单设置这些,以后再设置配色方案,自动提示,文件列表等功能,VI的使用,大家可以看看VI的中文手册

编写简单的C程序

我们先写一个统计字符个数的程序

 

然后编程程序,执行程序

 

3. vi编辑器的命令

(1)强制退出

底行命令:

:q!

(2)打开其他文件

底行命令:

:e 文件路径

:e! 文件路径 ---- 忽略修改

(3)读取其他文件内容到光标所在的下一行

底行命令:

:r 文件路径

(3)保存vi编辑器中的内容到另外的文件

底行命令:

:w 文件路径

(4)移动光标

h j k l ----- 左 下 上 右

(5)翻页

ctrl+u ------- 向前翻半页

ctrl+d -------- 向后翻半页

ctrl+b ------- 向前翻一页

ctrl+f -------- 向后翻一页

(6)移动光标

^:移动到光标所在的行的第一个非空格字符

Home键:移动到光标所在的行的第一个字符

$/End键:移动到光标所在的行的后一个字符

w:移动光标到下一个单词的首字母

b:移动光标到前一个单词的首字母

e:移动光标到下一个单词的尾字母

注:以上3个命令前加数字表示移动多少个单词

G:前面加数字移动到指定的行,不加数字移动到后一行

(7)设置行号

底行命令:

:set nu

(8)进入编辑模式

A:移动到本行末进入编辑模式

cw:删除光标所在位置到所在单词末尾的字符,进入编辑模式

c$:删除光标所在位置到本行行尾的字符,进入编辑模式

c^:删除本行行首到光标所在位置(不包括)的字符,进入编辑模式

(9)编辑模式下的按键操作

方向键移动光标

Home键:移动到本行第一个字符

End:移动到本行后一个字符

PageUp/PageDown:向上/向下翻页

退格键/del键:删除光标前一个/所在的字符

(10)删除(剪切)命令

dw:删除光标到所在单词尾的所有字符,包括单词后的空格键

de:删除光标到所在单词尾的所有字符,不包括单词后的空格键

d$:删除光标到所在行行尾的所有字符,包括光标

d^:删除光标所在行行首到光标的所有字符,不包括光标

dG:删除光标所在行到文件尾

dgg:删除文件开头到光标所在行

J:删除本行的后换行符,相当于将下一行合并到本行末尾

注:把上述命令的d改成c就会在完成操作后进入编辑模式

(11)撤销操作

u:撤销上一次的操作

U:撤销对当前行的上一次操作

ctrl+r:u的反操作

(12)拷贝命令

yw:拷贝光标到所在单词尾的所有字符,包括单词后的空格键

ye:拷贝光标到所在单词尾的所有字符,不包括单词后的空格键

y$:拷贝光标到所在行行尾的所有字符,包括光标

y^:拷贝光标所在行行首到光标的所有字符,不包括光标

yG:拷贝光标所在行到文件尾

ygg:拷贝文件开头到光标所在行

(13)查找文件内容

底行命令:

/word ---------- 在文件中向下查找word内容

?word ----------- 在文件中向上查找word内容

n/N:定位前一个/后一个查找到的内容

注:*可以快速查找光标所在的单词

查找的时候可以只查找单词开头部分或者结尾部分

the> ------- 以the结尾的单词

.可以代表一个任意字符

(14)替换文件内容

底行命令:

:s/old/new ----------- 将本行第一个old替换成new

:s/old/new/g ----------- 将本行所有old替换成new

:#,#s/old/new/g ------ 将(#,#)行所有old替换成new

:%s/old/new/g ------ 将文件中的所有old替换成new

可以在命令后加c让用户对每一次替换进行确认

(15)补充命令

% --------- 移动光标到配对的括号

. --------- 重复上一个命令

v ---------- 进入可视模式,选择的文本会被高亮,可以对选中的部分进行d(剪切),y(拷贝)操作

底行命令:

:vs 路径 ----------- 水平显示打开的文件

:sp 路径 ----------- 垂直显示打开的文件

ctrl+ww来在不同的文件之间切换

(16)打开多个文件的操作

vi 路径1 路径2 路径3 ...........

相关底行命令

:args ------------- 显示打开的所有文件

:next ------------- 切换到后一个文件

:prev ------------- 切换到前一个文件

:first ------------ 切换到第一个文件

:last ------------- 切换到后一个文件

ctrl+^可以立即切换到前一个操作的文件

4.总结:

其实编辑器除了用vi 还可以用gedit, dwrite, kate图形化编辑器,自己选择一个习惯的就行了,只是vi编辑工具在今后的终端上会经常用到,所以一般要求掌握它的用法。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>