1. 简介
Linux是一个开源的类Unix系统,它与Unix相兼容,使用相同的Shell外壳,又因其开源性质受到大多数技术控的喜爱,其中由于其稳定完善的功能和强大社区的支持,使用Linux的方面越来越广泛。嵌入式领域中是Linux非常适合的舞台,可修改的轻量级操作系统非常适合嵌入式领域,而由于最近所兴起的开源硬件思想,Linux的重要性日益突出,而在Web开源开发中由于LAMP受到了大力推崇,Linux在服务器领域也是顺风顺水,越来越流行(Facebook都用,还有什么可怀疑的呢)。另外在Linux中,C/C++编程与在Windows编程中有了比较大的区别,具体请见《Unix环境高级编程》,不进行赘述。
而由于本人之前一段的工作和未来所要从事的方面都与上述有所交集,遂决定转入Linux阵营,由于工作需要捡起C/C++继续学习中。下面是本人关于环境搭建的一点总结,以免失忆。本人菜鸟一名,一切从简,有错误欢迎拍砖。
另外,Linux有许多的版本,个人比较喜欢Debian,自己使用Ubuntu。
2. 编辑器—Vim
在Linux C++编程环境中,也有如VS的继承开发环境,如CodeBlock,Eclipse,QTCreator等等,但最受推崇的文件编辑器要数Vi和Emacs了,Vi作为最受推崇的编辑器有非常强大的功能,而Emacs也是同样,由于本人对Vi比较熟悉,对Emacs还不很了解,目前就使用Vim(Vi的增强)作为编辑器进行配置介绍。
2.1安装
在Ubuntu中安装一个Vim和其他任何软件一样都有两种方法,编译安装和apt-get安装,这两种安装方式一般都可,如果可行的话推荐apt-get,比较方便,也不用自己处理依赖,不过使用这种方式需要找好apt-get的源,进行配置后才可进行(附两个源的链接http://blog.sina.com.cn/s/blog_4b8de29f0100mkhw.htmlhttp://wiki.ubuntu.org.cn/index.php?title=Qref/Source&variant=zh-cn)。
在安装完Vim之后,就可以进行使用了,这时虽然可以使用Vim,但是此时的Vim的功能还是非常少的,而Vim的功能扩展主要是通过安装插件进行,我们所说的配置Vim其实主要就是配置Vim的插件,关于插件,推荐一篇博文,非常详细的介绍了各种插件的安装以及用法:http://blog.csdn.net/wooin/article/details/1858917。
而插件相关的两个比较重要的文件是$Home/.vim文件夹,其中的plugins可供我们放置下载后待用插件,如果此文件夹不存在可以手动创建,而$Home/.vimrc这个文件就是我们Vim的主要配置文件,所有的插件配置都在此文件中进行。
下面主要记录下我自己的插件配置,我的配置极为简单,仅为记录
2.2我的插件配置
2.2.1使用的插件有:
1. CTags:支持对代码文件进行扫描生成tags文件的工具,是taglist等插件的基础,可以用于在源文件中进行跳转。如函数名上使用Ctrl+] 可以调整到定义处,Ctrl+T可以跳回原点。注:在每次源文件修改后原则上都要重新生成tags才可正常使用。
2. Taglist:在CTags的基础之上,可用在源文件中查看它的变量和函数名等等
3. WinManager:可用用来以列表的形式查看源文件结构,可用以Vim屏幕切分管理,源文件我一般用NERDTree来进行查看
4. NERDTree:一个很强大的文件浏览器插件,可以用树形结构给出文件的整体格式,使用起来非常方便,建议使用
5. QuickFix:标准Vim插件,在窗口下面显示结果的窗口,使用方式见:helpquickfix.
6. MiniBufExplorer:在同时打开多个文件的时候,方便多个文件的切换插件
7. New-omni-completion:自动补全功能,基于Ctags,可以完成代码的提式和自动补全等
8. Vimgdb:在Vim中集成gdb的工具,可以直接在Vim中执行调试,很不错的工具。
经过上述插件的配置,我的基本Vim配置就完成了,当然个别插件的安装都不是那么容易的(比如vimgdb),具体的安装方法请Google之,不赘述。现在Vi基本已经可以当作IDE进行使用了,也拥有了基本的一些功能。下面是我的.vimrc文件配置截图
2.2.2配置截图
![](http://hi.csdn.net/attachment/201201/8/0_1326003514mxuM.gif)
![](http://hi.csdn.net/attachment/201201/8/0_1326003520TixK.gif)
![](http://hi.csdn.net/attachment/201201/8/0_13260035246Uot.gif)
注:关于Vimgdb的安装几点记录,参考教程:
http://easwy.com/blog/archives/advanced-vim-skills-vim-gdb-vimgdb/
1)打完补丁,编译完成后,记得拷贝vimgdb_runtime文件夹
2)再.vimrc里设置:runmacros/gdb_mappings.vim的映射<C-F10>,运行之
3)然后按F7,开启gdb正式映射模式,可以正常使用gdb_mappings.vim里面定义的快捷键
4)使用先file fileName,在ctrl+B加断点,用大写R运行程序,大写C继续,ctrl+P打印变量值,可以:bel20vsplit gdb-variables打开变量监视窗,用v命令选中变量,用ctrl+P将变量放入监视窗口,可以用createva x+2的方式将变量的计算值也放入窗口
3. 编译器—gcc
3.1简介
gcc全称是GNU C Compiler,是GNU项目中最杰出的软件之一,gcc现在已经是一个编译器软件家族,它已经不仅能支持C,现在还可以支持C++,Java,Objective C, COBOL等语言。(C++的编译器为g++,源文件默认后缀为cxx, windows下一般为cpp)
gcc编译程序的时候整个过程分为4个阶段:
1. 预处理PreProcessing ----- 调用预处理器cpp
2. 编译 Compiling ----- gcc 自身执行
3. 汇编 Assembling ----- 调用汇编器as
4. 链接 Linking ----- 调用链接器 ld
3.2 gcc用法
gcc的基本用法是
gcc [options] [filenames]
常用的选项有:
-c |
只编译,不连接成可执行文件 |