cat ss.c | wc -l 管道 前一条指令的输出,作为后一条指令wc的输入
file ss.c
gcc -E 预编译 头文件include什么的
-S 编译 产生汇编代码
-c 链接以前的都做了,即完成E S的工作以后然后生成.o 这种二进制模块文件
as 汇编过程,assembler,将汇编代码搞成二进制.o
gcc --help 两个横杠这种要记住,是用来看说明help的
gcc xx.o -o xx 即把.o进行链接了。 ./xx 执行该可执行文件,./ 表示当前文件夹目录
写makefile的时候
一种写法:
CC=gcc
CFLAGS=-Wall
a: b.o a.o
这种写法,通过依赖关系以及编译器参数选择,进行编译、链接,但是要注意的链接而成的可执行文件a最好要与有main函数的模块同名
如a 与 a.o同名
另一种写法:
直接自己写
test: b.o a.o
gcc b.o a.o -o test
test:标签编译b.o a.o,最后自己写的这条command将a.o,b.o链接到一块形成test可执行模块
/usr/include 下有c的一些头文件,包括 stdio.h stdlib.h等等
/usr/lib 下有libc.a libm.a等等库,其中libc.a 就是c标准库,gcc默认链接的,其他需要 -lm 这种方式指定链接
sudo apt-get install libglib2.0-dev
pkg-config --cflags glib-2.0