ページ 11

無題

Posted: 2007年12月17日(月) 16:59
by 御三家
以前Visual c++の使いかた聞いたものです。

なんとか実行したいので

Linuxでやってみました。

すると
/tmp/ccW4i71F.o(.text+0x1a6): In function `main':
: undefined reference to `sqrt'
/tmp/ccW4i71F.o(.text+0x348): In function `dft':
: undefined reference to `cos'
/tmp/ccW4i71F.o(.text+0x382): In function `dft':
: undefined reference to `sin'
・・・
collect2: ld はステータス 1 で終了しました

と出てきました。

Visualのときはビルドはできてましたし、#include <math.h>も
プログラムに入っているのでこの理由がわかりません。

誰か教えてください。お願いします。

Re:無題

Posted: 2007年12月17日(月) 18:30
by YuO
えーっと,コンパイラは何ですか?
確か,ccだと数学用ライブラリの使用には-lmオプションが必要だった記憶があるのですが。

Re:無題

Posted: 2007年12月17日(月) 20:40
by 御三家
C言語(text.cとなる)ですね。

授業で使用していたものをそのまま使用しています。

コンパイラは
GNOME端末で

% gcc text.c

で読み込めれば

./a.out で実行します。

Re:無題

Posted: 2007年12月18日(火) 09:15
by VOW
でしたら、YuOさんのおっしゃるとおり-lmオプションがたりないんですよ。

gcc -lm text.c

Re:無題

Posted: 2007年12月18日(火) 11:17
by 御三家
回答ありがとうございます。

では

% gcc -lm text.c

./a.out

として一度試してみます。