我有四个包含C代码的文件。编译多个源文件
Headers.h
- (包含所有必要的)头
AddStudent.h
- 该文件包括Headers.h还介绍了一些功能代表团
AddStudent.c
- 包含AddStudent.h
main.c
描述的功能 - 包含main()
问题是如何用cc编译代码?
我有四个包含C代码的文件。编译多个源文件
Headers.h
- (包含所有必要的)头
AddStudent.h
- 该文件包括Headers.h还介绍了一些功能代表团
AddStudent.c
- 包含AddStudent.h
main.c
描述的功能 - 包含main()
问题是如何用cc编译代码?
在你的情况,你可能只需要:
cc main.c AddStudent.c
的权要做的就是让一个makefile。这里有一个(可能有点幼稚)例如:
myapp: main.o AddStudent.o
cc -o myapp main.o AddStudent.o
main.o: main.c AddStudent.h Headers.h
cc -c -o main.o main.c
AddStudent.o: AddStudent.c AddStudent.h Headers.h
cc -c -o AddStudent.o AddStudent.c
最好的地方,了解make
是GNU Make Manual。
奖励注释 - 如果您开始学习C,您可能需要查看clang。除了支持没有特殊标志的C99以及编译速度更快之外,它给出了比gcc更好的错误消息。
'cc main.c -o main -I.' BUT函数的实现应该留在C文件中,所以AddStuden.h实际上应该是AddStudent.cpp,因为它们是AddStudent.h函数的实现。在这种情况下,你需要:'cc main.c AddStudent.c -o main -I.' – karlphillip 2012-01-06 18:49:56
作业应该被标记为作业 – pm100 2012-01-06 18:50:25
我假设你的意思是addstudent.c(以及addstudent.h) – pm100 2012-01-06 18:51:00