undefined reference to double...

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

undefined reference to double...

Beitrag von nici »

hallo,

ich bekomme einen Fehler, von dem ich denke, dass es gar kein Fehler ist. Vielleicht könnt ihr mir helfen, danke.

Code: Alles auswählen

int ix, iy;      
	for(ix=0; ix< img.width(); ix++){
	   for(iy=0; iy<img.height(); iy++){ 
	         double ax = (((ix-(265/2))*apertureAngle)/(256/2)); 
	         double ay = (((iy-(265/2))*apertureAngle)/(256/2)); 

	         double negChiDurchLambda = -TEMTableauAnalysis::opticalPathLength(aber, ax, ay) / lambda ;
	         double negChiDurchLambdaWrapped = (negChiDurchLambda - static_cast<double>(static_cast<int>(negChiDurchLambda)) ) ;
	   
	         if(negChiDurchLambdaWrapped < 0.0){
	              negChiDurchLambdaWrapped += 1.00 ;
	         }	
	   	              
	         // Testen: negChiDurchLambdaWrapped muss im Intervall [0.0, 1.0)     
	         double justForControl = (negChiDurchLambda - negChiDurchLambdaWrapped) ; // sollte bis auf Rundungsfehler ganzzahlig sein
	         img(ix, iy) = static_cast<int16>(negChiDurchLambdaWrapped * static_cast<double>(maxPixVal) + 0.5);

	}}
und vordefiniert ist:

Code: Alles auswählen

  static double opticalPathLength(Aberration aber, double ax, double ay);
Fehlermeldung:
undefined reference to `cstools::TEMTableauAnalysis::opticalPathLength(cstools::Aberration, double, double)'
collect2: ld returned 1 exit status
make: *** [QtAufgNeu] Fehler 1
Hmm mir fällt nichts ein ^^
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

das ist keine Definition, sondern eine Deklaration. Du kündigst also die Funktion an ("static double...") und du verwendest sie ("opticalPathLength(aber, ax, ay) ").... Also solltest du sie auch irgendwann bis zum Linken ausprogrammieren (definieren).
nici
Beiträge: 246
Registriert: 29. Oktober 2008 12:50

Beitrag von nici »

hallo,

ja hattest recht. Ich hatte nicht die neuste Version der Library. der hat es einfach nicht gefunden, aber jetzt gehts, danke.

lg

nici
Hmm mir fällt nichts ein ^^
Antworten