Undefinierter Symbolfehler bei Verwendung einer Header-Datei

Ich erhalte die folgende Fehlermeldung und kann für mein ganzes Leben nicht herausfinden, was ich falsch mache.

$ gcc main.c -o main

Undefined symbols:
  "_wtf", referenced from:
      _main in ccu2Qr2V.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

Haupt c

#include <stdio.h>
#include "wtf.h"

main(){
    wtf();
}

wtf.h:

void wtf();

wtf.c:

void wtf(){
    printf("I never see the light of day.");
}

Now, wenn ich die gesamte Funktion in die Header-Datei einbinde, anstatt nur die Signatur, ist dies in Ordnung, sodass ich weiß, dass wtf.h enthalten ist. Warum sieht der Compiler wtf.c nicht? Oder vermisse ich etwas?

Grüße

Antworten auf die Frage(4)

Ihre Antwort auf die Frage