FortranからPythonを呼ぶ(その2):Intelコンパイラとforpyを組み合わせる
試した環境
mac OS 12.6
ifort (IFORT) 2021.7.0 20220726
Python 3.9.12 :: Intel Corporation
gfortranを使っているQiitaの記事を参考に試してみたところ、いくつか対策が必要になった。
※Qiitaの記事
qiita.com
具体的には、次の3点。
- forpyのモジュールをリンクする際に、呼ぶPythonのライブラリのパスとして-L/opt/intel/oneapi/intelpython/latest/libを追加しないと、libpython3.9.dynalibがリンクできないために最終的な実行形式ファイルができない
- 実行ファイルを走らせると、リンクできるはずの上記のライブラリが見つからないと言い出すので、/usr/local/libにlibpython3.9.dynalibのシンボリックリンクを追加
- 環境変数PYTHONHOMEを設定しないと、python本体を見つけられないらしいので、PYTHONHOMEとして/opt/intel/oneapi/intelpython/latestを設定
2番めのシンボリックリンクを作るところは、付け焼き刃過ぎて後に禍根を残しそう。
人には薦めがたいやり方なので、もっといいやり方を探したい。