2012-01-06 9 views
0

C 코드가 포함 된 네 개의 파일이 있습니다.여러 소스 파일 컴파일

Headers.h - (포함 필요한 모든) 헤더

AddStudent.h-AddStudent.h

main.c에 설명 된 기능을 포함 - - Headers.h 또한 일부 기능 위임

AddStudent.c을 소개 포함 해당 파일은 main()

포함

질문은 cc로 코드를 컴파일하는 방법입니까? 귀하의 경우에는

+1

'cc main.c -o main -I.' 그러나 함수 구현은 C 파일에 남겨 두어야합니다. AddStudent.h는 AddStudent.h의 함수 구현이므로 실제로 AddStudent.cpp가되어야합니다. 이 경우,해야 할 일은 다음과 같습니다.'cc main.c AddStudent.c -o main -I.' – karlphillip

+1

숙제는 숙제로 표시되어야합니다. – pm100

+0

addstudent.c (addstudent.h뿐 아니라)라고 가정합니다. – pm100

답변

2

는, 당신은 아마 필요

cc main.c AddStudent.c 

수행하는 권리 것은 메이크 파일을 만들 수 있습니다. 여기에 (아마도 조금 순진) 예입니다

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 

최고의 장소에 대한 makeGNU Make Manual 배울 수 있습니다.

보너스 메모 - C를 배우기 시작하면 clang을 확인해보십시오. 에 gcc보다 나은 오류 메시지를 제공하며, 특별한 플래그없이 C99를 지원하고 컴파일시 훨씬 빠릅니다.

+0

사용할 이름 지정 규칙을 추천 해 주시겠습니까? – summerc

+0

나는 이제 괜찮다고 생각한다. 원래 게시물에 오타가있어 이상하게 보였다. –

+0

조금 무서워. 20 개 이상의 .h/.c 파일을 가지고 있다면 고통이 될 것입니다. – summerc

관련 문제