引き続きC言語のお勉強中。
ちょっとポインタあたりを検索しつつ、お勉強してみる。
でもって、サンプルを実行中、どーしてもコンパイルエラーになる。
$ gcc -o sample sample.c
/tmp/ccgJ0RxZ.o(.text+0x30): In function `sample':
: undefined reference to `sqrt'
collect2: ld はステータス 1 で終了しました
$
なんだよー、math.hきちんとインクルードしてんのにさぁ。
答えは簡単。
The Linux GCC HOWTO - 6.2 ライブラリに尋ねる(sin() はどこにいるの?)で定義されている関数の本体は全て math ライブラリにあります。したがってこのような関数を用いるには、リンクの際に -lm が必要になるわけです。
いやはやお恥ずかしい限りです。
だからさ、初心者なんだって、結局は。
きちんと勉強をした方がよさそうだなぁ。
The Linux GCC HOWTO
http://www.linux.or.jp/JF/JFdocs/archive/GCC-HOWTO.html
0 コメント:
::コメントを投稿する::