====== 概要 ====== 高速フーリエ変換をおこなうライブラリFFTWのインストール方法です。 環境 * Ubuntu 22.04 ====== ソースコードの入手 ====== 以下のサイトから入手できます。 * [[http://www.fftw.org/|FFTW Home Page]] 記事執筆時点での最新版は3.3.10です。 ====== インストール ====== 入手したfftw-3.3.10.tar.gzをホーム・ディレクトリに置き、ターミナルで以下のように入力します。 以下は並列計算に対応したFFTWを使うときの例です。 $ tar -zxvf fftw-3.3.10.tar.gz $ cd fftw-3.3.10 $ ./configure --prefix=/usr/local/fftw3 CC=icx MPICC=mpiicc F77=ifort --enable-mpi --enable-threads # Intelコンパイラの場合 $ ./configure --prefix=/usr/local/fftw3 CC=gcc MPICC=mpicc F77=gfortran --enable-mpi --enable-threads # GNUコンパイラの場合 $ make $ sudo make install 以上で完成です。 ライブラリは /usr/local/fftw3/lib/ に、インクルードファイルは /usr/local/fftw3/include/ に設置されます。 ===== configureのいろいろ ===== configureはデフォルトでいろいろ設定してくれますが、オプションをつけることで自分でも設定できます。 オプションは次のようにして確認できます。 $ ./configure --help * --enable-threads ... メモリ共有型の並列計算を行いたいときに追加します * --enable-openmp ... メモリ共有型の並列計算でOpenMPを使用したいときに追加します(通常は--enable-threadsのみで十分です) * http://www.fftw.org/fftw3_doc/Installation-and-Supported-Hardware_002fSoftware.html ===== 古い情報 ===== * Ubuntu 18.04 入手したfftw-3.3.9.tar.gzをホーム・ディレクトリに置き、ターミナルで以下のように入力します。 以下は並列計算に対応したFFTWを使うときの例です。 $ tar -zxvf fftw-3.3.9.tar.gz $ cd fftw-3.3.9 $ ./configure --prefix=/usr/local/fftw3 CC=icpc MPICC=mpiicc F77=ifort --enable-mpi --enable-threads # Intelコンパイラの場合 $ ./configure --prefix=/usr/local/fftw3 CC=gcc MPICC=mpicc F77=gfortran --enable-mpi --enable-threads # GNUコンパイラの場合 $ make $ sudo make install 以上で完成です。 ライブラリは /usr/local/fftw3/lib/ に、インクルードファイルは /usr/local/fftw3/include/ に設置されます。 ===== configureのいろいろ ===== configureはデフォルトでいろいろ設定してくれますが、オプションをつけることで自分でも設定できます。 オプションは次のようにして確認できます。 $ ./configure --help * --enable-threads ... メモリ共有型の並列計算を行いたいときに追加します * --enable-openmp ... メモリ共有型の並列計算でOpenMPを使用したいときに追加します(通常は--enable-threadsのみで十分です) * http://www.fftw.org/fftw3_doc/Installation-and-Supported-Hardware_002fSoftware.html ===== もっと古い情報 ===== * Ubuntu 18.04 入手したfftw-3.3.8.tar.gzをホーム・ディレクトリに置き、ターミナルで以下のように入力します。 以下はMPIを使うときの例です。 $ tar -zxvf fftw-3.3.8.tar.gz $ cd fftw-3.3.8 $ ./configure --prefix=/usr/local/fftw3 CC=icpc MPICC=mpiicc F77=ifort --enable-mpi --enable-threads CFLAGS="-D__PURE_INTEL_C99_HEADERS__" # Intelコンパイラの場合 $ ./configure --prefix=/usr/local/fftw3 CC=gcc MPICC=mpiicc F77=ifort --enable-mpi --enable-threads # Intelコンパイラでエラーが出る場合 $ ./configure --prefix=/usr/local/fftw3 CC=gcc MPICC=mpicc F77=gfortran --enable-mpi --enable-threads # GNUコンパイラの場合 $ make $ sudo make install 以上で完成です。 * (Ubuntu 18.04 & Intel XE2019) icpcでコンパイルするとエラーが出るようになったので CC=gcc としてください) ライブラリは /usr/local/fftw3/lib/ に、インクルードファイルは /usr/local/fftw3/include/ に設置されます。