Ich habe Probleme mit der Verwendung der Funktion sqrt in C, obwohl ich die math.h-Header verwenden und ich verwende Doppelgänger. Beim Versuch, den folgenden Code auszuführen:Fehler bei der Verwendung von sqrt in C
#include <stdio.h>
#include <math.h>
int main(int argc, char **argv)
{
int J = 1000000;
sieve(J);
}
int sieve(int J)
{
int P[J+1]; P[0] = 0; P[1] = 0; int i;
for (i = 2; i <= J; i++) //set all values of P to 1 initially
{ P[i] = 1;}
int p = 2;
double y = (double) J;
double J2 = sqrt(y);
}
I receieve den Fehler:
/tmp/ccAhS08O.o: In function 'sieve':
test.c:(.text+0xf8): undefined reference to `sqrt'
collect2: error: ld returned 1 exit status
Mögliche Duplikat von [C zu kompilieren - undefined reference to sqrt (oder andere mathematische Funktionen)] (http://stackoverflow.com/questions/5248919/c-undefined-reference-to-sqrt-or-other-mathematical-functions) –