こんにちは。
外に遊びにいけないので家でパソコンをいじることになりました。動画とか観るのもあきてきたため、やはり生産性のあることをやったほうがいいと思います。Pythonの勉強をしようとしてとりあえずminicondaをアップデートしようとしたりjupyter notebookを起動しようとしたらエラーが出ました。
ImportError: dlopen(/Users/○○/miniconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so, 2): Library not loaded: @rpath/libffi.6.dylib
Referenced from: /Users/○○/miniconda3/lib/python3.7/lib-dynload/_ctypes.cpython-37m-darwin.so
Reason: image not found
というわけでlibffi.6.dylibというのがないらしいです。
(base) lib $ ll libffi*
-rwxrwxr-x 1 ○○ ×× 37892 6 27 21:18 libffi.7.dylib*
-rw-rw-r-- 2 ○○ ×× 42792 4 23 06:06 libffi.a
lrwxr-xr-x 1 ○○ ×× 14 6 27 21:18 libffi.dylib@ -> libffi.7.dylib
libffi.6.dylibってのがないけどlibffi.7.dylibというのがあるらしい。で、バージョン番号を指定してないやつは新しいと思われる7の方にシンボリックリンクが張られている。
(base) lib $ ln -s libffi.7.dylib libffi.6.dylib
とやったら動きました。libffi-3.3の管理が変わったとかそんなことが
https://github.com/conda/conda/issues/9899
にありましたの参考迄に。前のバージョンをしばらく放っておいてアップデートするとこの問題が出るようです。
Python周りはオリジナルのやらhomebrewのやらpipやらanacondaやらでごちゃごちゃしているのであまりシェルでいじりたくないのですが、anaconda(minicondaだけど)の在りかがわかったからもう大丈夫かな?