私は簡単なテストの建設をコンパイルしようとしたのLinuxプログラミングに新しいですが含まれています。コンパイル時にエラーが発生します。 inc.cも(app:行で)追加することはできません。ファイルをどのように正しく含めるべきですか?Makefileは、ヘッダ
のMakefile:
app: main.c inc.h
cc -o app main.c
ターミナル:
make
cc -o app main.c
/tmp/ccGgdRNy.o: In function `main':
main.c:(.text+0x14): undefined reference to `test'
collect2: error: ld returned 1 exit status
make: *** [app] Error 1
のmain.c:
#include <stdio.h>
#include "inc.h"
int main()
{
printf("Kijken of deze **** werkt:\n");
test();
getchar();
return 0;
}
inc.h
#ifndef INCLUDE_H
#define INCLUDE_H
void test();
#endif
inc.c
#include <stdio.h>
void test()
{
printf("Blijkbaar wel!");
}
なぜヘッダファイルを 'cc -c main.c inc.h'と' cc -c inc.c inc.h'に入れますか? – navigaid