2012-05-04 8 views
14

-lmオプションはg ++で何を行いますか?また、いつ必要ですか?g ++で-lmオプションは何をしますか?

g ++オプションの完全な説明はありますか?

+1

GCCのドキュメント(man gcc)に完全なリストがあります。 – Mat

+0

[math.hのsqrtが原因でコンパイルエラーが発生する](http://stackoverflow.com/questions/1711915/sqrt-from-math-h-causes-compile-error)。また、[gcc:なぜ数学ライブラリをリンクするには-lmフラグが必要ですか?](http://stackoverflow.com/questions/4606301/gcc-why-the-lm-flag-is-needed-to-link -the-math-library) – Abhijit

+0

math.hヘッダをインクルードしていますが、なぜ「sqrt」への未定義の参照を取得しているのですか?](http://stackoverflow.com/questions/10409032/) –

答えて

19

これはリンカオプションです。これはリンカーにmライブラリ(libm.so/dll)と(-l)をリンクするよう指示します。それは数学ライブラリです。 #include <math.h>の場合は、しばしば必要となります。

6

オプションがg++ために何もしません:この回答https://stackoverflow.com/a/1033940/1143274libstdc++を参照することが常にg++によってリンクされますので、libmが必要です。

しかし、...

そこに私はそれがどこから来るのような答えを見つけることができないよう、このスレッド http://www.linuxforums.org/forum/programming-scripting/125526-c-gcc-math-h-lm.htmlに調査し gccのための自動リンクの動作のいくつかの並べ替えは、もあり、それが適用されるライブラリました
関連する問題