PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : kleines C Problem (math)



hunter
05-01-2004, 12:13
Ich will das folgende Programm übersetzen:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

float a,b,c;

int main()
{
a = b * c + log(b / sqrt(c)) / pow(b + c,3);
printf("%f\n", a);

return 0;
}


Doch ich erhalte als Fehler:

gcc "Übung5_A2.c" -o "Übung5_A2"

/tmp/ccgw82Dj.o(.text+0x39): In function `main':
: undefined reference to `sqrt'
/tmp/ccgw82Dj.o(.text+0x4b): In function `main':
: undefined reference to `log'
/tmp/ccgw82Dj.o(.text+0x75): In function `main':
: undefined reference to `pow'
collect2: ld returned 1 exit status

Wiso sind ihm Logarythmus, Wurzel und Exponent nicht bekannt, obwohl ich math.h importiere ?

Silver
05-01-2004, 12:35
kompiliere so:
gcc "Übung5_A2.c" -o "Übung5_A2" -lm

mfG

hunter
05-01-2004, 12:45
Danke. Hat funktioniert.

Für was steht -lm ?

peschmae
05-01-2004, 14:27
Für libm - entweder libm.so oder libm.a :)

Wohl das Linken der Mathe-Bibliothek, deren Header du einbindest.

Stdio und stdlib sind ja eh schon dabei.

MfG Peschmä