[python] Mac で pyenv の設定がされない

Macを新しく(中古だけど)したついでに、OSも最新のCatalinaにしました。

pyenv を使ってpythonの環境を切り替えてるのですが、pyenv でバージョンが切り替わらないくて少し困りました。

コンソールで上記を実行すると、pyenv が動いてバージョンが正しく選択されるのですが。

原因は、Catalina は標準のshellが、zsh に変わるみたいで、単純に .bash_profile に書いていたものを、.zshrc に書いておけば良いみたいです。
なのでよく他のサイトで載っているやり方に合わせるなら、

を実行しておけば良いと思います。

私がpyenvをインストールした時にすでにpyenvがPATHに入っていたので、私の場合は

だけにしました。心配な方は、PYENV_ROOTとPATHも入れておいた方が良いと思います。

[python] Mac Catalina に mariadb + mysqlclient の環境を作成する

Mac : 10.15.1
Python 2.7.6
MariaDB : 10.4.10

mysqlclient を入れるのにいつくか関門があった。

まずは解決方法

以下発生したエラーとそれぞれの対応

ssl のインストール

pip install mysqlclient
を普通に行うと

はい、openssl を入れます。

インストール時に

と表示されるので、その通りに従い実行する

そして、

エラー

mariadb-connector-c を入れる

エラーを調べると以下のようなのが見つかる。

https://stackoverflow.com/questions/44239393/installing-mysqlclient-for-mariadb-on-mac-os-for-python3/44268445#44268445

手順を真似して実行する

だめじゃん。
以下のエラー

mysql_config いじる

mysql_config 中をいじると良いとある情報が多々見つかる

https://stackoverflow.com/questions/50864438/mac-pip-install-mysql-python-unsuccessful

https://stackoverflow.com/questions/12218229/my-config-h-file-not-found-when-intall-mysql-python-on-osx-10-8

だけど、/usr/local/bin/mysql_config 正しく言えば、/usr/local/opt/mariadb-connector-c/bin/mariadb_config はバイナリ。

mariadb-connector-c じゃなくて、mariadb を利用していた時は、 mariadb_config はシェルファイルでいじれるけど。 なので、mariadb 時代の mariadb_config コピーしたりしたけど無駄でした。

include を追加して対応

結局 my_config.h の場所を探して

をしたら成功しました。

仮想実行環境などで2回目以降のインストール

仮想実行環境(virtualenvや、pipenv)で、2回目以降は以下の手順でインストールできます。
mariadb-connector-c を、install するか unlink するかの違いしかないです。