很多从朋友想学习如何在linux下做开发,我自己走过很多弯路,买过很多冤枉书,根据我个人的经历,我觉得这样的一个学习流程是比较合理的(个人看法):
1、先熟悉linux系统的常用命令。
2、深入学习emacs或者vim。值得你花半年时间系统学习!以后我们就是用这个编辑器来写程序的了,经过配置,emacs完完全全就是一个IDE了,像代码跳转,自动补齐(智能感应)以及其他的一些好用功能。
3、学习makefile的编写。因为我们是用makefile来组织我们的程序的就像vc6里头又dsp/dsw文件一样(当然也vc自己的makefile)。有些好的工具能帮助我们编写可以移植的makefile,如autoconf等。
4、学习用GUN的开发工具链,如gcc,gdb,ldd,ld,……
5、学习linux的系统调用以及一些开源库。看看那些高手写的代码,长见识。学习cvs,因为大多数开源代码都是cvs管理的,用cvs 把代码搞下来。
6、编写自己的代码,完成工作
……
大家遇到问题最多的估计就是如何搭建一个类似VC这样好用的IDE了,呵呵……,多花点时间学习emacs,会受益无穷的。还有就是gdb调试时感觉不是很方便,其实gdb配合emacs用比vc6都好用呢!当然makefile编写也会让很多人畏惧,坚持一下就好了,特别是学会了atuoconf等工具,写个makefile还是非常容易的。
推荐读物:
linux系统使用:《鸟哥的LINUX私房菜:基础学习篇 》
emacs学习:《学习GNU EMACS(第二版)》
linux开发工具学习:《LINUX & UNIX程序开发基础教程 》
linux系统调用学习:《UNIX/LINUX编程实践教程 》,《UNIX环境高级编程(第2版) 》
makefile学习呢,就在网上搜一下吧,参考一下别人的,犯不着买书,如果实在想买呢,《GNU MAKE项目管理(第三版完全修订版)(中文版) 》也不错!
cvs,在网上搜搜,教程很多的。