Problem mit undefined reference to

Gast #2644328
Lesenswert?

Ich habe ein Programm für die FFT.
Obwohl alles eingebuden ist, kommt immer diese Fehlermeldung:

undefined reference to `fft_input'
undefined reference to `fft_execute'
undefined reference to `fft_output'



Ich habe schon nach dieser Fehlermedlung gesucht, was sie überhaupt 
bedeutet.
Gefunden habe ich, dass ich bei der Deklaration
1
 extern "C"

einbauen soll.
Mehr weiß ich leider nicht.
1
void fft_input (const complex_t *, complex_t *);
2
#else
3
void fft_input (const int16_t *, complex_t *);
4
#endif
5
#endif
6
void fft_execute (complex_t *);
7
void fft_output (complex_t *, uint16_t *);
8
int16_t fmuls_f (int16_t, int16_t);

Was muss ich jetzt machen?
Gast #2644446
Lesenswert?

Die benötigte Header Datei habe ich so eingebunden:

#include <ffft.h>

Ich habe das bis jetzt immer so bei anderen Programmen gemacht und da 
hat es funtioniert. In diesem Programm habe ich auch andere header 
Dateien und mit denen funktioniert das tadellos.
Ich habe gelesen, dass es bei mir mit den C++/C kompiler was zutun hat, 
da ich einen Teil des Programmes übernommen habe.
Gast #2644482
Lesenswert?

Aha.
Da ist der Inhalt der Funktionen. Hast Du die .S Datei auch eingebunden?
Wenn ja, und wenn Du kein externes makefile sondern das vom Studio 
benutzt, kann es nur noch an einem Fehler in den diversen #ifdef liegen.
#2644505
Lesenswert?

Mr. D schrieb:
> Ich habe schon nach dieser Fehlermedlung gesucht, was sie überhaupt
> bedeutet.

Das sind Linker-Fehlermeldungen. Sie besagen, dass der Linker die 
angegebenen Funktionen nicht findet. Das passiert bei Zusammenbau des 
fertigen Programms.
Das kann daran liegen, dass die Quellcode-Datei, die die Funktionen 
enthält nicht in das Projekt eingebunden wurde.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren