linux 中,gcc -c 产生目标代码,-o连接文件。其实很多时候直接-o就可以了,为什么要-c呢?
linux 中,gcc -c 产生目标代码,-o连接文件。其实很多时候直接-o就可以了,为什么要-c呢?
日期:2010-01-17 14:29:21 人气:2
-o 表示产生目标文件。
-c 表示只编译代码但不进行链接,加改参数生成的目标文件是不能执行的(我们常用的链接库就是这样得来的)。
通常在只有一个源文件的情况下不需要加-c。但实际上大多数情况下C程序远不止1个源文件,当main函数需要调用不在同一源文件下的函数时就需要链接到包含该函数的目标文件。
举个例子:
/*main.c*/
#include
int main(){
test();
}
/*test.c*/
#include