Вопрос по gcc, c, header, header-files – Проблема с заголовком C: #include и «неопределенная ссылка»

19

Хорошо, я пытался работать с этим дольше всего, и я просто не могу заставить его работать правильно. У меня есть три файла,main.c, hello_world.c, а такжеhello_world.h. По какой-то причине они, похоже, не компилируются, и я просто не могу понять, почему ...

Вот мои исходные файлы. Первый hello_world.c:

<code>#include <stdio.h>
#include "hello_world.h"

int hello_world(void) {
  printf("Hello, Stack Overflow!\n");
  return 0;
}
</code>

Затем hello_world.h, просто:

<code>int hello_world(void);
</code>

И, наконец, main.c:

<code>#include "hello_world.h"

int main() {
  hello_world();
  return 0;
}
</code>

Когда я помещаю это в 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 процентов уверен, что это действительно простое решение.

Ваш Ответ

0   ответов

Похожие вопросы