みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

FFTWでコンパイルができません。

FFTWでコンパイルができません。

http://www32.atwiki.jp/amaeda/pages/12.html

↑のソースファイルをコンパイルすると以下のエラーが出ます。↓
>gcc -o fftw1D fftw1D.c -lfftw3 -lm
(MinGW)

c:/mingw/bin/../lib/gcc/mingw32/4.5.0/../../../../mingw32/bin/ld.exe: cannot find -lfftw3
collect2: ld returned 1 exit status

FFTWはわからないので、教えてください。

投稿日時 - 2011-03-12 16:53:36

QNo.6588258

すぐに回答ほしいです

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

今実行環境無いので、参考意見として聞いてください。


gccで-lfftw3としたときに使うライブラリは libfftw3.a と言うファイル名になります。~.libは使いません。
もしかしたら、
gcc -o fftw1D fftw1D.c fftw3.lib -lm
としたらできるかもしれませんし、できないかもしれません。コンパイルはできても動かないかもしれません。

fftwのソースを入手して、MinGWでビルド→インストールしたあとで その例の -lfftw3を指定してのコンパイル、というのが一番問題が無いと思います。
http://www.fftw.org/fftw3_doc/Installation-on-Unix.html#Installation-on-Unix


または、Visual Studioを持っているなら、その「追加インクルードパス」「追加ライブラリ」等を適切に設定して、そちらでコンパイルするか、です。

投稿日時 - 2011-03-12 23:00:40

お礼

Visual Studioでやってみます。
ありがとうございました。

投稿日時 - 2011-03-13 14:33:46

ANo.2

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

エラーメッセージは「-lfftw3が見つからない = libfttw3.a ライブラリが見付からない」と言っています。

FFTWそのものがビルド/インストールされていないように見えます。
あるいは、MingGW使用ということなので、Visual C++用にビルド/インストールしたけど、MinGW用にはやっていない、か。

投稿日時 - 2011-03-12 19:43:50

補足

FFTWのビルド/インストールは、やりましたが、自信がありません。

それと、私の環境には、MinGWとVisual studio 2008がインストールされています。

.libのビルドがうまくいかなかったので、ビルドせず、.libは、ダウンロードしました。(はじめからビルドしてあるものを)

投稿日時 - 2011-03-12 21:08:17

あなたにオススメの質問