質問: sqrt(numArg); 22 return x; 23 } ``` ### 試したこと ・上述の通り"重複して定義されています"でググりました →ヘッダファイルの扱いに問題があるのかと思いましたが、どこが問題なのかもわかりませんでした。 ・root関数とroot関数のプロトタイプ宣言、関数をコールする文章を全てコメントアウトしました →"mainが重複して定義されています"とエラーメッセージが出ました →単純なミスかとも考えられましたが、見つかりません。。。 【17:33追記】 ideone.comで同じコードで実行したところ走りました。 しかし、入力はできない状態です。 解決はCentOsでコンパイルできることに致します。 ### 実行環境 CentOsの7.5です。
回答: ``` gcc -g root.c -o root.o -lm root.c ``` オプションを整理するとこれと同じ意味になります。 ``` gcc -g -o root.o -lm root.c root.c ※-g デバッグ情報を OS ネイティブ形式で生成する -o オブジェクトファイルの名称を指定する -lm libm をリンク対象とする ``` root.c を **2度** 処理しているので、重複してしまいます。