Hallo Zusammen,
ich arbeite gerade an einem Projekt, in dem ich auch gern nebenbei einen
Frequenzanalyzer mit einbauen würde.
Leider bekomme ich die Software von Elm Chan nicht zum laufen.
(siehe http://elm-chan.org/works/akilcd/report_e.html)
Das Problem scheint mir mit dem Linker zusammen zu hängen, leider habe
ich davon keine Ahnung und finde nichts passendes im Netz.
Ich arbeite mit Atmel Studio 6.0.1996 und schreibe mein Programm in C++.
Die ffft.h und ffft.S habe ich über <rechtsklick>/add/existing item im
Solution Explorer hinzugefügt, die ffft.h ist mit
1
#include"ffft.h"
includiert.
So wie ich die Ausgabe von Atmel Studio verstehe, scheint er die .o noch
erstellen zu können und der Linker findet ein Problem. Stimmt das
soweit?
Könnt Ihr mir bitte helfen und sagen, was ich falsch mache?
Vielen Dank!
David
Hier die Fehlermeldung aus dem Atmel Studio:
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
5
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.targets" from project "C:\Users\David\Desktop\led_table\led_table_1\led_table_1\led_table_1.cppproj" (target "Build" depends on it):
6
Task "RunCompilerTask"
7
C:\Program Files (x86)\Atmel\Atmel Studio 6.0\make\make.exe all
Stefan E. schrieb:> Vermutlich 'extern "C"' vergessen.
Hallo Stefan,
danke für den Hinweis...
Leider weiß ich nicht, wie ich das umsetzen muss.
Muss ich dieses im header hinzufügen? Weil ich aus c++ ein "c"-header
einbinde? Ich habe bisher nur die Anzahl der Samples runter gesetzt.
Müsste ich also den kompletten oberen Teil (bis zu /*for asm module*/ in
1
extern"C"{
2
3
}
"einpacken"?
Die ffft.h sieht folgendermaßen aus:
1
#ifndef FFT_N
2
#define FFT_N 64 /* Number of samples (64,128,256,512). Don't forget to clean! */