Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Warchangel 03 Září 2011, 01:19:38

Název: netbeans , funkcia sqrt
Přispěvatel: Warchangel 03 Září 2011, 01:19:38
cawte programujem vo vyvojovom prostredí Netbeans, ale narazil som na problem pri kompilacii tohto programu:

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

typedef double (*p_fd)();

p_fd odmocnina(void)
{return (sqrt);}

int main(void)
{   double d=odmocnina()(9.00);
   
    printf("%lf\n",d);

    return 0;
}

v netbeans mi hned vypise chybove hlasenia:

Citace
build/Debug/GNU-Linux-x86/main.o: In function `odmocnina':
/home/jakub/NetBeansProjects/CppApplication_3/main.c:12: undefined reference to `sqrt'
collect2: ld returned 1 exit status
make[2]: Leaving directory `/home/jakub/NetBeansProjects/CppApplication_3'
make[2]: *** [dist/Debug/GNU-Linux-x86/cppapplication_3] Error 1

ale v inych vyvojovych prostrediach (geany, code::blocks) a aj ked to skompilujem manualne v console, to bezproblemov funguje.
Neviete kde je chyba a ako by sa dala odstranit?
Za odpovede vopred dakujem.
Název: Re: netbeans , funkcia sqrt
Přispěvatel: premet 03 Září 2011, 07:29:37
Musíš si sám přilinkovat matematickou knihovnu, že kompilátoru dáš ješte parametr -lm  :)
Název: Re: netbeans , funkcia sqrt
Přispěvatel: Warchangel 03 Září 2011, 20:25:07
ja viem ze v console musim pouzit -lm, a mna skor zaujima ako to urobit  aby mi to fungovalo v netbeans. Pretoze radsej pracujem v nejakom vyvojovom prostredi ako v console, a nerad by som menil NETBEANS za ine IDE, lebo som si nan uz zvykol.
Název: Re: netbeans , funkcia sqrt
Přispěvatel: Vojtěch Trefný 03 Září 2011, 21:10:08
File → Project Properties → Build → Linker → Command Line → Additional Options → dopsat "-lm"
Název: Re: netbeans , funkcia sqrt
Přispěvatel: Warchangel 03 Září 2011, 22:24:07
vdaka, za pomoc