dポイントプレゼントキャンペーン実施中!

#include <math.h>
のために
gcc -o abc abc.c -lm
とやれば OK なのですが
gcc -o -lm abc abc.c
とやると abc.c は存在しないというエラーが出ます。これはなぜでしょうか?

 コンパイラオプションの規則について、ネットで検索しているのですが適当なサイトが見つかりません。

A 回答 (2件)

正確なメッセージがほしいところだけど, 少なくとも


-o の直後に「出力するファイル名」が必要
というのはどこにでも書いてあるんじゃないかね.
cf. https://gcc.gnu.org/onlinedocs/gcc/Option-Summar …

あとリンクするライブラリを指定するオプションは「コマンドラインで指定した順」にリンカがチェックしていくはず. 複数回指定する必要があるケースもあったような気がする.
    • good
    • 0
この回答へのお礼

回答まことにありがとうございます。
> 少なくとも
> -o の直後に「出力するファイル名」が必要
> というのはどこにでも書いてあるんじゃないかね.
 そうなんですね。もちろん知りませんでしたw。

お礼日時:2022/12/21 18:18
    • good
    • 0
この回答へのお礼

回答まことにありがとうございました。感謝いたします。

お礼日時:2022/12/21 18:19

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!