1. 编译格式:
总之,-E生成.i文件;-S生成.s文件;-c生成.o文件(分别生成对应的.o);-o得到可执行文件(-o可以将多个.o文件链接生成一个可执行目标文件)
2. makefile
使用make,默认编译文件名为makefile的文件,若要指定其他,用-f;eg:make -f makefile1
3. makefile文件格式:
4. 同名依赖项省略规则:
对比makefile和makefile2:简言之,当依赖项基名与此步骤生成的目标基名相同时,不需要在依赖项写源文件,也不需要写指令
5. makefile中变量使用:
声明:a=value;使用:$(a)
6. 静态库与共享库生成
生成静态库命令ar:打包.o文件便于管理
libit.a为指定的生成库的名字,后面若干.o文件是要加入库的.o文件
生成动态共享库:gcc -shared libname.so file1.o file2.o
7. 库的使用:
无论静态库还是共享库,都可以在gcc时用-lname的方式直接添加库(name为库名,不带lib字符和后缀)
用-Ldir可以添加搜索库的目录dir
eg: gcc interest.c -lit -L -lm
8. 在makefile中管理库文件
ar_name(file_name)访问库文件
9. gdb调试使用:用gdb -g编译程序之后才能调试
10. C编程其他函数:rand,time,malloc,free,open,close,write,lseek