linux learn

来源:互联网 发布:马尔文粒径软件 编辑:程序博客网 时间:2024/05/21 17:16

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