トップページ -> インストール,設定,利用 -> Linux で開発環境やツールを整備 -> Linux で FFTW3 のビルドとインストール
[サイトマップへ], [サイト内検索へ]

Linux で FFTW3 のビルドとインストール

FFTW とは, 離散フーリエ変換 (DFT) を行う C のプログラム集.1次元に限らず,より高次元でも動く. この Web ページでは,Linux での FFTW バージョン 3 (FFTW3)インストール法図解で説明する.


前準備

Ubuntu, Debian で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.

sudo apt update
sudo apt -yV upgrade
sudo /sbin/shutdown -r now

Fedora で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.

yum check-update
yum update

■ Ubuntu でパッケージを用いてインストールする場合の手順

◆ Ubuntu での操作手順(例)(パッケージを用いてインストールする場合

sudo apt-get -yV install libfftw3-3
sudo apt-get -yV install libfftw3-dev
sudo apt-get -yV install libfftw3-doc

◆ Ubuntu での操作手順(例)(ソースパッケージを用いてビルドとインストールを行う場合

※ソースパッケージに関する設定については,別のページで説明している.

mkdir /tmp/fftw3
cd  /tmp/fftw3

apt-get source fftw3
sudo apt-get -yV build-dep fftw3
cd fftw3-3.2.2
sudo dpkg-buildpackage -uc -us -rfakeroot 
cd ..
sudo dpkg -i *.deb

■ Linux で FFTW3 のソースコードのダウンロードとビルドとインストールを行う場合の手順 (Ubuntu や Fedora を使用)

最新版を追いかけたい場合など

◆ FFTW3 のソースコードのダウンロード

  1. FFTW の Web ページを開く

    http://www.fftw.org/

  2. Download」をクリック

    [image]
  3. 最新バージョンをダウンロード

    [image]
  4. ソースコードの展開
    cd /tmp
    tar -xvzof fftw-3.3.3.tar.gz
    

[image]

◆ ソフトウエア開発環境などのインストール

◆ ビルドの前に決めておく事項


◆ FFTW3 のビルドとインストール

  1. configure の実行

    次の操作を行う.単精度の浮動小数点数で計算したい場合は「--enable-float」を設定する. 倍精度での浮動小数点数で計算したい場合は「--enable-long-double」を設定する.

    ※ 「--enable-float」のときは,「--enable-sse」を付けると高速化が期待できる(SSE 付きのプロセッサのみ)

    cd /tmp
    cd fftw-3.3.3
    CC=gcc F77=gfortran CFLAGS="-O3 -fno-tree-vectorize -fexceptions" FFLAGS="-O3 -fno-tree-vectorize -fexceptions" ./configure --prefix=/usr/local --enable-threads --enable-shared --enable-static
    

    ■ 実行後,エラーメッセージが出ないことを確認すること. エラーの場合 「make CC=gcc43」のように CC=...の部分を変えるとうまくいくことがある. <要点>

    Core2 プロセッサであり,かつ,64 ビット Linux を使っている場合.

    つまり,

    CC=gcc F77=gfortran CFLAGS="-O3 -fno-tree-vectorize -fexceptions -m64 -mfpmath=sse -msse4.1 -march=native" FFLAGS="-O3 -fno-tree-vectorize -fexceptions -m64 -mfpmath=sse -msse4.1 -march=native" ./configure --prefix=/usr/local --enable-threads --enable-shared --enable-static --enable-long-double
    

    のようにしてもいいでしょう

    [image]

    ※ Octave をインストールする予定がある場合には, --enable-long-double を付けないで、もう1度ビルドした方がよい場合がある.

  2. configure コマンドの結果の確認

    必ず,エラーメッセージが出ていないことを確認する.

    [image]
  3. make の実行
    make
    

    [image]
  4. make の結果の確認

    必ず,エラーメッセージが出ていないことを確認する.

    [image]
  5. make check の実行

    「make check」を使うと,チェック用プログラムが動き,自動的にチェックしてくれます.

    make check

    [image]
  6. make check の結果の確認

    必ず,エラーメッセージが出ていないことを確認する.

    [image]
  7. make install の実行
    sudo make install
    

    [image]
  8. make install の結果の確認

    ※ エラーメッセージが出ないことを確認すること.

    [image]
  9. /sbin/ldconfig の実行

FFTW インストール用スクリプトの例

■ Intel Core2 の場合 (FFTW バージョン 3.3.3)
TMP=/tmp

cd ${TMP}
rm -rf fftw-3.3.3
tar -xvzof ${TMP}/fftw-3.3.3.tar.gz

cd ${TMP}/fftw-3.3.3
CC=gcc F77=gfortran CFLAGS="-O3 -fno-tree-vectorize -fexceptions -m64 -mfpmath=sse -msse4.1 -march=native" FFLAGS="-O3 -fno-tree-vectorize -fexceptions -m64 -mfpmath=sse -msse4.1 -march=native" ./configure --prefix=/usr/local --enable-threads --enable-shared --enable-static --enable-long-double
make
make check

FFTW のビルドとインストール (Intel コンパイラを使用する場合)

  1. configure の実行

    ※ エラーメッセージが出ないことを確認すること.

    cd /tmp
    cd fftw-3.3.3
    CC=icc CFLAGS="-O2 -prec-div -prec-sqrt -fp-model precise -static -ip -parallel -par-threshold=95" ./configure --prefix=/usr/local
    

    Core2 プロセッサ の場合は, 「CC=icc CFLAGS="-O2 -prec-div -prec-sqrt -fp-model precise -static -ip -xSSE4.1 -parallel -par-threshold=95" ./configure --prefix=/usr/local」 のようにしてもいいでしょう

    [image]
  2. configure コマンドの結果の確認

    必ず,エラーメッセージが出ていないことを確認する.

    [image]
  3. make の実行
    make
    

    [image]
  4. make の結果の確認

    ※ エラーメッセージが出ないことを確認すること.

    [image]
  5. make check の実行

    「make check」を使うと,チェック用プログラムが動き,自動的にチェックしてくれます.

    make check

    [image]
  6. make check の結果の確認

    必ず,エラーメッセージが出ていないことを確認する.

    [image]
  7. make install の実行

    引き続き,次の操作を行う.

    ※ エラーメッセージが出ないことを確認すること.

    make install
    
  8. /sbin/ldconfig の実行

本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

問い合わせ先: 金子邦彦(かねこ くにひこ) [image]