2012-05-04 12 views
14

Cosa fa l'opzione -lm in g ++ e quando è necessaria?Cosa fa l'opzione -lm in g ++?

Esiste una descrizione completa delle opzioni g ++?

+1

C'è una lista completa nella documentazione di GCC (man gcc). – Mat

+0

Il duplicato di [sqrt da math.h causa l'errore di compilazione] (http://stackoverflow.com/questions/1711915/sqrt-from-math-h-causes-compile-error). Anche in relazione a [gcc: perché è necessario il flag -lm per collegare la libreria matematica?] (Http://stackoverflow.com/questions/4606301/gcc-why-the-lm-flag-is-needed-to-link -the-math-library) – Abhijit

+0

possibile duplicato di [Why I'm Getting "riferimento indefinito a' sqrt '"Errore, anche se includo l'header math.h?] (http://stackoverflow.com/questions/10409032/ why-im-getting-undefined-reference-to-sqrt-error-even-though-i-include-ma) –

risposta

19

Questa è un'opzione di collegamento. Indica al linker di collegare (-l) alla libreria m (libm.so/dll). Questa è la biblioteca di matematica. Ne hai spesso bisogno se si è #include <math.h>.