奥村@松阪大です。 From: Ken-ichi Yasuda <yasu_ken@xxxxxxxxxxxxxxxxxxxx> Subject: [vine-users:050767] gcc の問題について Date: Thu, 23 May 2002 17:11:04 +0900 Message-ID: <20020523171104.07b54f71.yasu_ken@xxxxxxxxxxxxxxxxxxxx> yasu_ken> 安田と申します。 yasu_ken> Vine Linux2.5(FTP)を使っています。 yasu_ken> それで、gccについて、ちょっと不具合があるようなので、 yasu_ken> どうか、ご教授ください。 yasu_ken> 問題というのは、以下のプログラムをコンパイルしたときに、 yasu_ken> エラーが出ることです。 yasu_ken> yasu_ken> #include <stdio.h> yasu_ken> #include <math.h> yasu_ken> yasu_ken> int main() yasu_ken> { yasu_ken> double x, s; yasu_ken> yasu_ken> scanf("%f",&x); yasu_ken> s = sin(x); yasu_ken> yasu_ken> printf("%f\n",s); yasu_ken> yasu_ken> return 0; yasu_ken> } yasu_ken> yasu_ken> エラーメッセージは、 yasu_ken> yasu_ken> /tmp/ccNb6t26.o: In function `main': yasu_ken> /tmp/ccNb6t26.o(.text+0x27): undefined reference to `sin' yasu_ken> collect2: ld returned 1 exit status yasu_ken> yasu_ken> というものです。 yasu_ken> どうやら、math.hをうまく読みこめていないようなのですが、 yasu_ken> これはどうしてでしょうか? yasu_ken> それとも、自分のとんちんかんな勘違いなのでしょうか? 後者です。:-) gcc hoge.c -lm としてください。数学関数を使った場合は -lm です。 あと,もう一つ,明白なバグがあります。:-) -- Haruhiko Okumura <okumura@xxxxxxxxxxxxxxxxx> Matsusaka University, 1846 Kubo-cho, Matsusaka, 515-8511 Japan http://www.matsusaka-u.ac.jp/~okumura/