• ベストアンサー

gcc lcrt1.o コンパイルエラー mac xcode

Mac OS X 10.3.9のXcode 300.0上で、UNIX上で動作するC言語プログラムの開発を行っています。 デバッガ上で、エラーや警告が最後まで、一つだけ消えずに、コンパイルできません。デバッガ上のエラーは「control reaches end of non-void function」、ターミナル上から、gccでコンパイルすると、「can't locate file for: -lcrt1.o」というエラーです。 解決法をご教示ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • asuncion
  • ベストアンサー率33% (2127/6290)
回答No.2

>gccでコンパイルすると、「can't locate file for: -lcrt1.o」というエラーです。 コンパイル時のオプション -l とライブラリ名との間に、 1個以上の空白を入れていますか?

oldbegin
質問者

お礼

この質問を参考に調べてみましたら、ほかの質問者salsberryさんの場合と同じようです。有り難うございました。

oldbegin
質問者

補足

オプションを付けていません。 "return 0;"を付加しても駄目で、何か、エラー無視するようなオプションがありますでしょうか?

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2127/6290)
回答No.1

>デバッガ上のエラーは「control reaches end of non-void function」 "control reaches end of non-void function" というキーワードでググると、原因や対処法が見つかります。 non-void な(つまり戻り値を返す)関数の最後まで来たけれど、 戻り値を返すための return 文が見つからなかった、という意味です。

oldbegin
質問者

補足

return文を付加すると、デバッガ上ではエラーが回避されますが、ターミナル上では同じ結果です。 何か、根本的なコーディング・エラーかとも思っておりますが...

関連するQ&A