Ubuntu 18.04 ltsでapt autoremoveで古いintel oneapiを削除したらコンパイル済のfortranライブラリが動かなくなった。

どうやってコンパイルしてたかも思い出せなかったが、この記事に書いていた。

fftwの扱いでまだdfftw_xx_destroy.oがundefined等のエラーがでる。

新しくなったoneapiのfortranのfftwwrapperをmakeしてやる必要があった。

cd /opt/intel/oneapi/mkl/2023.1.0/interfaces/fftw3xf/

make libintel64

 

これで良いと思ったが、まだdfftw_xx_destroy.oが/bin/pythonのルーチンで見つからないとエラー。/opt/intel/oneapi/intelpythonが消失していることに気づいた。何というパッケージ名のものがapt autoremoveでremoveされたか、履歴を

less /var/log/apt/history.log

で調べ、removeしたintel-oneapi-pythonをとりあえず

apt install intel-oneapi-python

でインストールすると、scikitなんかも連れ立って入ってきた。

あとはonapiのconda環境でmatplotlibもなくなっていたので入れてやると、ようやく問題のfortranのライブラリが動くようになった。

 

教訓:intel oneapiは便利だが、aptでautoremoveとかすると、condaとか手動でmakeしたものが吹き飛んでしまう。