2015-02-12 128 views
0

我有以下文件进行编译:编译头文件

cc -g -c -o add_clnt.o add_clnt.c 
cc -g -c -o add_client.o add_client.c initfunction.c 
cc -g -c -o add_xdr.o add_xdr.c 
cc -g -o add_client add_clnt.o add_client.o add_xdr.o -lnsl 
cc -g -c -o add_svc.o add_svc.c 
cc -g -c -o add_server.o add_server.c 
cc -g -o add_server add_svc.o add_server.o add_xdr.o -lnsl 

但这是不可能的,因为我得到以下错误:

cc -g -c -o add_clnt.o add_clnt.c 
cc -g -c -o add_client.o add_client.c initfunction.c 
cc: fatal error: cannot specify -o with -c, -S or -E with multiple files 
compilation terminated. 
make: *** [new] Fehler 1 

initfunction.c与add_client.c通过连接一个initfunction.h,所以它提供了额外的功能。

有人可以告诉我如何编译?

格鲁斯,安德烈

+0

是不是所有连接到一起的文件都连接在一起?标题文件和源文件实际上不以这种方式连接。 – 2015-02-12 08:54:43

回答

0

更改此:

cc -g -c -o add_client.o add_client.c initfunction.c 

cc -g -c -o add_client.o add_client.c 
cc -g -c -o initfunction.o initfunction.c 

然后加入initfunction.o对象链接列表。

+0

仍然得到错误“cc:致命错误:无法指定-o与-c,-S或-E与多个文件” – Andre 2015-02-12 09:01:17

+0

@Andre编辑,我做了复制/粘贴错误 – ouah 2015-02-12 09:02:36

+0

是的,这是工作,谢谢。 – Andre 2015-02-12 09:09:32