extern in header funktioniert nicht
-
Hallo!
Ich habe 4 Dateien:
func.h
#define F() func(1) extern void func(int arg);
func.c
#include "func.h" void func(int arg){ //do something }
main.h
#include "func.h"
#include "main.h" int main(){ F(); }
Beim Compilieren sagt er mir: main.c: undefined reference to 'func'. Wo ist der Fehler?
-
Du hast die Objektdatei, die aus func.c erstellt wird, nicht dazugelinkt.
-
1. Brauchst Du hier glaube ich kein "extern"
2. Kompiliert es sowohl mit als auch ohne "extern" wenn alles richtig dazugelinkt ist