Хорошо, я пытался работать с этим в течение самого долгого времени, и я просто не могу заставить его работать правильно. У меня есть три файла: main.c
, hello_world.c
и hello_world.h
. По какой-то причине они, похоже, не компилируются красиво, и я действительно просто не могу понять, почему...
Вот мои исходные файлы. Сначала hello_world.c:
#include <stdio.h>
#include "hello_world.h"
int hello_world(void) {
printf("Hello, Stack Overflow!\n");
return 0;
}
Тогда hello_world.h, simple:
int hello_world(void);
И затем, наконец, main.c:
#include "hello_world.h"
int main() {
hello_world();
return 0;
}
Когда я помещаю его в GCC, это то, что я получаю:
cc main.c -o main /tmp/ccSRLvFl.o: In function `main': main.c:(.text+0x5): undefined reference to `hello_world' collect2: ld returned 1 exit status make: *** [main] Error 1
Кто-нибудь может мне помочь? Я действительно застрял в этом, но я на 99 процентов уверен, что это действительно простое решение.