工具
- 学会使用vim/emacs,vim/emacs是linux下最常用的源码编辑具,不光要学会用它们编辑源码,还要学会用它们进行查找、定位、替换等。
- 学会makefile文件的编写规则,并结合使用工具aclocal、autoconf和automake生成makefile文件。
- 掌握gcc和gdb的基本用法。掌握gcc的用法对于构建一个软件包很有益处,当软件包包含的文件比较多的时候,你还能用gcc把它手动编译出来,你就会对软件包中各个文件间的依赖关系有一个清晰的了解。
- 掌握svn/cvs的基本用法。这是linux,也是开源社区最常用的版本管理系统。可以去试着参加sourceforge上的一些开源项目。
linux/unix系统调用与标准C库
推荐学习资料为steven先生的UNIX环境高级编程(简称APUE)。
库的学习
- glib库
- libxml库
- readline库
- readline库
- gtk+和KDE库
网络
推荐学习资料steven先生的UNIX网络编程(简称UNP)和TCP/IP协议详解