2

Mac OS Lion で openmp オプションを指定して fftw3 をコンパイルしようとしています。http://www.fftw.org/release-notes.htmlで公開されているように、次のコマンド ラインを使用します ./configure --enable-openmp

configure は次の行で停止します: C コンパイラの OpenMP フラグをチェックしています... 不明な構成: エラー: OpenMP を有効にする方法がわかりません

openmp が xcode で提供されていることは知っていますが、構成オプションにそれを提供する方法がわかりません。誰か助けてください。私はすでに他のプログラムで openmp を使用することに成功しています。

これが私を助けるのに十分な情報であることを願っています。

ありがとうございました、

注: Xcode 4.2、gcc 4.2.1 を使用しています。

config.log の「出力変数」セクションで、次のことがわかります。

CFLAGS='-O3 -fomit-frame-pointer -mtune=native -fstrict-aliasing -ffast-math'

失敗は次のようです (config.log 内):

configure:18427: gcc -std=gnu99 -o conftest conftest.c -lm >&5
アーキテクチャ x86_64 の未定義シンボル:
"_omp_set_num_threads"、ccfUItzL.o
ld の _main から参照: アーキテクチャ x86_64 のシンボルが見つかりません
collect2: ld 1 つの終了ステータスが返されました
configure:18427: $? = 1
構成: 失敗したプログラムは: /.../

4

1 に答える 1

1

よく見ると、fftw3 の openmp の構成テストがどのように機能するのか理解できていないようです。

構成スクリプトを編集します。omp_set_num_threads()toの 2 つの発生を置き換えてomp_get_num_threads()、configure as を再実行します./configure --enable-openmp。それを行った後、Lion と Xcode 4.2.1 を使用した私の Macbook Pro の make check でほとんどのテストをビルドしてパスしたようです。

gcc 4.2 の OpenMP サポートはあまり良くなく、パフォーマンスも高くないことに注意してください。

于 2012-02-04T01:07:20.220 に答える