Użycie funkcji sqrt z math.h - nie dzia

Potrzebujesz pomocy z C, C++, perl, python, itp.
wojak
Beginner
Posty: 129
Rejestracja: 04 lutego 2009, 15:59

UŻycie funkcji sqrt z math.h - nie działa

Post autor: wojak »

Napisałem mały program do obliczania pól i objętości brył - to jedno z moich zadań domowych. Mam w nim wzór na pole stożka, ale bez podawania tworzącej - program ma ją obliczać sam, a następnie podstawiać sobie do wzoru. Program kompiluje się i działa poprawnie pod Windowsem w DevCpp. Ale pod Linuksem w Geany wywala bład, gdy wciskam F9. Oto "kłopotliwy" fragment kodu:

Kod: Zaznacz cały

 l = sqrt (pow(h,2) + pow(r,2));
Treść komunikatu o błędzie:

Kod: Zaznacz cały

lista_1_zad_2.c :( .text+0x20e): undefined reference to `sqrt'
Ciekawi mnie czemu to się nie daje uruchomić.
Euzebiusz29
Posty: 39
Rejestracja: 05 lutego 2009, 14:11

Post autor: Euzebiusz29 »

Zmień math.h na cmath może to pomoże
wojak
Beginner
Posty: 129
Rejestracja: 04 lutego 2009, 15:59

Post autor: wojak »

Zmieniłem rozszerzenie na .cpp i działa też pod Linuksem. Ale to jest co najmniej dziwne, bo kod pisałem korzystając tylko i wyłącznie z C.
Awatar użytkownika
grucha
Beginner
Posty: 345
Rejestracja: 29 września 2007, 01:04
Lokalizacja: Rzeszów / Kraków

Post autor: grucha »

Było podobne pytanie wczoraj, albo przedwczoraj. Należy dołączyć ręcznie bibliotekę matematyczną do linkera - opcja -lm w gcc.
ODPOWIEDZ