下午玩了一会Linux,准备稍微系统的学习一下Linux下的C/C++开发。其实前些年学习《自己动手写操作系统》、《程序员的自我修养》、《鸟哥的Linux私房菜》等的时候,对于Linux系统的基本原理还有基本的操作也是清楚的,但是就是不系统,最关键的是没有开发过Linux系统上的产品,不管是客户端还是服务器端。
没有使用code block或者eclipse这样的ide,体验一下用命令行编程的乐趣,Windows下一直使用VS IDE,各种方便。
下午主要使用了gcc和Makefile做一个hello world ,当然是很简单。总结一下:
(1)gcc -M 源文件 :可以输出目标文件的依赖头文件,包括了gcc系统头文件
(2)gcc -MM 源文件 :可以输出目标文件的依赖头文件,不包括了gcc系统头文件,只含有开发者自己加入的头文件
(3)Makefile的格式就是:
目标: 依赖项1 依赖项2
<Tab>命令
特别是Tab,不能写成空格,否则会报错,说缺少分隔符。
Makefile如下:
test:test.o
gcc test.o -o test
test.o:test.c head.h
gcc -c test.c
clean:
rm -f test *.o