2016-11-20 21 views
1

QTプロジェクトにFFTWライブラリを追加しようとしています。 pageからfftw-3.3.5-dll64.zipをダウンロードしました。FFTWライブラリをQTプロジェクトに追加

その後、私はそれを解凍し、すべてのファイルを "c:\ fftw"ディレクトリにコピーします。私のプロジェクトの設定で は、私は以下の

INCLUDEPATH += "c:\fftw" 
LIBS += -L "c:\fftw" -lfftw3-3 

のような行を追加しました。そして、私のMainWindow.hに私は残念ながら、私は私のプロジェクトを再構築することはできません

#include <fftw/fftw3.h> 

下のようにそれが含まれています。次のエラーがあります。

error: C1083: Cannot open include file: 'fftw/fftw3.h': No such file or directory 

私は何をすればよいですか? "c:\ fftw"ディレクトリにあるファイルのリスト。

Directory of c:\fftw 

2016-11-20 14:15 <DIR>   . 
2016-11-20 14:15 <DIR>   .. 
2016-07-30 22:38   400˙306 bench.exe 
2016-07-30 22:42   411˙177 benchf.exe 
2016-07-30 22:44   380˙107 benchl.exe 
2016-07-30 20:21   18˙342 COPYING 
2016-07-30 20:21    863 COPYRIGHT 
2016-07-30 22:38   184˙625 fftw-wisdom.exe 
2016-07-30 22:44    2˙519 fftw3.f 
2016-07-30 22:44   55˙850 fftw3.f03 
2016-07-30 22:44   18˙517 fftw3.h 
2016-07-30 22:44   27˙592 fftw3l.f03 
2016-07-30 22:44   26˙291 fftw3q.f03 
2016-07-30 22:42   184˙732 fftwf-wisdom.exe 
2016-07-30 22:44   184˙732 fftwl-wisdom.exe 
2016-07-30 22:44   24˙067 libfftw3-3.def 
2016-07-30 22:38   2˙712˙765 libfftw3-3.dll 
2016-07-30 22:44   24˙985 libfftw3f-3.def 
2016-07-30 22:42   2˙772˙692 libfftw3f-3.dll 
2016-07-30 22:44   14˙465 libfftw3l-3.def 
2016-07-30 22:44   1˙247˙967 libfftw3l-3.dll 
2016-11-20 14:15     0 lista.txt 
2016-07-30 20:21   22˙670 NEWS 
2016-07-30 20:21    1˙827 README 
2016-07-30 22:44    2˙079 README-bench 
2016-07-30 22:44    1˙293 README-WINDOWS 
       24 File(s)  8˙720˙463 bytes 
       2 Dir(s) 17˙799˙467˙008 bytes free 

答えて

0

わかりました。それは私の間違いだったようです。

問題:私はMSVC2013 64ビットコンパイラを使用していた

FFTW pageには、ディレクトリに3つのdefファイルを持つVSのlib.exeを実行する必要があるという情報があります。私はそれをしようとしていたが、私はそれを行うことができませんでした。私はいくつかのlib.exeの問題がありました。

lib /def:libfftw3-3.def 
lib /def:libfftw3f-3.def 
lib /def:libfftw3l-3.def 

ソリューション:私はMinGWの32ビットへのQtの建物に変わってきたと私はFFTWの32bit版をダウンロードし

。今それは完全に動作しています

おかげさまで皆様のお手伝いをいたします!

2

添付ファイルが修正されるはずです。すでにCにあなたのインクルードパスを設定しているので :\ FFTWあなたはおそらく、サブディレクトリを指定せずに

#include <fftw3.h> 

を使用する必要があります。 あなたはそれ以外の方法でやりたいのでない限り。

EDIT:Qt documentationの例に従えば、あなたも、あなたのパスにスラッシュバックスラッシュを更新してみてください。しかし、自分の環境を調べる限り、どちらの場合でも動作します。

EDIT: - :

#include <QCoreApplication> 
#include <fftw3.h> 

int main(int argc, char *argv[]) 
{ 
    QCoreApplication a(argc, argv); 
    fftw_complex in[5]; 

    return a.exec(); 
} 

プロジェクトファイル:

QT += core gui 
CONFIG += c++11 

TARGET = FFTW_test 
CONFIG += console 
CONFIG -= app_bundle 

TEMPLATE = app 

INCLUDEPATH += c:/Tools/fftw 
LIBS += -Lc:/Tools/fftw -lfftw3-3 

SOURCES += main.cpp 

確認済み 著者要求にQtとFFTWとサンプルコードの追加問題が

main.cppには再現されませんQt5.3のWin8.1とFFTWの著者の質問から。

+0

解決策ではありません。私はあまりにも前にそれをチェックした。 – Tatarinho

+0

この場合、私はあなたの問題を再現できないと言わなければなりません。私はすでにあなたの説明に従って空のプロジェクトに追加されたfftwをダウンロードし、それは私のために正常に動作します。 – Dusteh

+0

.proファイルを追加できますか?私は今空のプロジェクトをやっていますが、それはまだ動作していません。あなたのシステムは何ですか?どのQtバージョン? – Tatarinho

関連する問題