49 Python 3.10 が来た。結構ドタバタ。

(なんだかんだ Python 使っているね。)

色々混乱していて、間違ったことも書いてしまった (参考にして失敗した人がいたらすみません)。 しばらくは工事中ということで。


あれ、MacPorts で(気づかないうちに) Python 3.10 が入っている。 update していたら
sudo port select --set python python310
sudo port select --set python3 python310
しなさい、と言われたので気づいた。

自分用 Python 環境の整え方 (更新)
sudo port -N install openblas +native
sudo port -N install py310-numpy +openblas
sudo port -N install py310-scipy +openblas
sudo port -N install py310-matplotlib
sudo port -N install py310-ipython
sudo port -N install py310-jupyter
sudo port -N install pandoc

sudo port select --set python python310
sudo port select --set python3 python310
sudo port select --set ipython py310-ipython
sudo port select --set ipython3 py310-ipython
sudo port select --set cython cython310
sudo port select --set pygments py310-pygments

これをすると、色々なものが強制的に更新されるわけで、 追従する人の環境はまあまあのレベルが保てそう。


あれ?M1 Mac ではうまく行かない? 上の結果は Intel Mac でのことだが、 M1 Mac では、私の勘違いかもしれないが、 gccdevel (gcc12) をインストールして、 それで OpenBLAS を make しようとしてこける? うーん、、、そうだ。variants をチェックしよう。
% port variants openblas
OpenBLAS has the variants:
   g95: Build using the g95 Fortran compiler
     * conflicts with gcc10 gcc11 gccdevel
   gcc10: Build using the MacPorts gcc 10 compiler
     * conflicts with g95 g95 gcc11 gccdevel
   gcc11: Build using the MacPorts gcc 11 compiler
     * conflicts with g95 g95 gcc10 gccdevel
[+]gccdevel: Build using the MacPorts gcc devel compiler
     * conflicts with g95 g95 gcc10 gcc11
[+]lapack: Add Lapack/CLapack support to the library
   native: Force compilation on machine to get fully optimized library
   universal: Build for multiple architectures
なるほど、確かに gccdevel 使おうとしている。 よく分からないが、gcc11 でやってみる。
sudo port clean OpenBLAS
sudo port install gcc11
sudo port install openblas +gcc11 +native
sudo port -N install py310-numpy +openblas
sudo port -N install py310-scipy +openblas
sudo port -N install py310-matplotlib
sudo port -N install py310-ipython
sudo port -N install py310-jupyter
sudo port -N install pandoc

sudo port select --set python python310
sudo port select --set python3 python310
sudo port select --set ipython py310-ipython
sudo port select --set ipython3 py310-ipython
sudo port select --set cython cython310
sudo port select --set pygments py310-pygments
とりあえずエラーなしに通った。

(2021/12/31追記) ところで gcc のマニュアルだけど、読むためには
man gcc-mp-11
としないといけない。これは分かりにくいね。 port select -set gcc mp-gcc11 したなら、単に man gcc で出て来るようにしてほしい。



桂田 祐史