源文件a.c,目标文件a.o,执行文件a(假设a中含main,可以运行)
1.单个文件
1)
gcc -c a.c //-c 只编译生成a.o
gcc a.o -o a 或者 gcc -o a a.o // 链接a.o , -o 表示指定可运行文件的名字,默认a.out, a.o和-o a的前后次序不要紧
./a //运行a
2)
gcc -o a a.c 或者 gcc a.c -o a // 直接从源文件生成可执行文件,不要加-c。a.c 与 -o a的前后次序不要紧
./a //运行a
2. 多个文件
1)
gcc -c a.c b.c
gcc a.o b.o -o a 或者 gcc -o a a.o b.o
./a
2)
gcc -o a a.c b.c 或者 gcc a.c b.c -o a
./a
多个文件跟一个文件是一样的,注意选项-c -o 不要同时用就行了。 另 g++类似。