Problem z kompilacją proetego kodu :O

0

Witam wszystkich. Napisałem w języku C bardzo prosty program, który wyświetla wartość sinusa dla jakiegoś argumentu (plik 1.c)

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

int main() {
	printf ("%lf\n", sin(3.14));
	return 0;
}

Kompiluję go poelceniem
gcc 1.c

ale konsola wypluwa mi:

/tmp/cci3mB6A.o: In function `main':
1.c:(.text+0x1b): undefined reference to `sin'
collect2: ld returned 1 exit status

Dlaczego?

Próbowałem rozwiązać ten prblem tak:

  1. Zmieniłem nazwę pliku math.h na cmath - bez skutku
  2. Zmieniłem kompilator na g++ - skompilowało się bez zarzutu, ale nie mogę korzystać z g++ tylko z gcc, niestety

Ktoś wie dlaczego nie mogę skompilować tego prostego programiku? gcc mam w najnowszej wersji

Pozdrawiam

0

musisz w opcjach kombilacji dolaczyc biblioteke math

zdaje sie, ze: -l math

albo jakos podobnie.

0

To nie pomaga. Odkryłem, że jak zmienię nazwę funkcji z sin na sqrt to działa bez zarzutu. Problem jest właśnie z tym sinusem (i być może innymi funkcjami trygonometrycznymi)...

0

trzeba było dodać opcję -lm
pozdrawiam wszystkich

0

gcc 1.c -lm

1 użytkowników online, w tym zalogowanych: 0, gości: 1