
Ubuntu日本語フォーラム

ログインしていません。
【解決しました】
C初心者です。よろしくお願いします。
Dosの参考書によれば、平方を求める場合は
#include <stdio.h>
#include <math.h>
int main()
{
int i;
i=2;
printf("%10f",sqrt(i));
return 0;
}
とすると、sqrtは使えないとのメッセージがでますが、Includeのファイルが間違っているのでしょうか?またはsqrtが違うのでしょうか?
最後の編集者: isamrx72 (2009-01-10 10:30:01)
オフライン
単にgcc test.c とするのではなく、 gcc -lm test.c としてコンパイルしてください。
なおお約束として言っておくと、「sqrtは使えないとのメッセージがでますが」などという表現ではなく、
/tmp/ccizXENy.o: In function `main':
test.c:(.text+0x39): undefined reference to `sqrt'
collect2: ld はステータス 1 で終了しました
というメッセージを吐いてコンパイル出来ません、と表現するべきです。
オフライン
hitoさん、回答有難うございました。
出来ました。教えていただいた、コンパイラオプションをこれから調べてみます。
オフライン