首页 > 代码库 > 多文件链接编译

多文件链接编译

 下面有两个文件 m.c和a.c

 

  m.c

        extern void a(char *);

        int main(int ac,char **av){

            static char string[] = "Hello World!\n": 

            a(string);

            return 0;

        }

 

   a.c

     #include<unistd.h>

     #include<string.h>

     void  a(char *str){

         write(1,str,strlen(str));

     }

  那如何编译呢?单个编译你会发现会报错,所以就文件本身的实现,应该使用多文件合并的编译

  gcc -o a.out  m.c  a.c

  最后会生成一个可执行的文件a.out