Warum erhalte ich den Fehler "undefinierter Verweis auf sqrt", obwohl ich den Header math.h einbinde? [Duplikat

Diese Frage hat hier bereits eine Antwort:

undefinierter Verweis auf sqrt (oder andere mathematische Funktionen) 4 Antworten

Ich bin sehr neu in C und ich habe diesen Code:

#include <stdio.h>
#include <math.h>
int main(void)
{
  double x = 0.5;
  double result = sqrt(x);
  printf("The square root of %lf is %lf\n", x, result);
  return 0;
}

Aber wenn ich das kompiliere mit:

gcc test.c -o test

Ich erhalte einen Fehler wie diesen:

/tmp/cc58XvyX.o: In function `main':
test.c:(.text+0x2f): undefined reference to `sqrt'
collect2: ld returned 1 exit status

Warum passiert das? Istsqrt() nicht immath.h Header-Datei? Ich bekomme den gleichen fehler mitcosh und andere trigonometrische Funktionen. Warum

Antworten auf die Frage(6)

Ihre Antwort auf die Frage