« ^ »

Pythonのmysqlclientパッケージのインストール時にpkg-configでmysqlclientを探せず失敗する

所要時間: 約 1分

https://qiita.com/kon-sato/items/ef7eb497b6154de909b9 と同じ問題に遭遇した。この記事では解決策としてバージョンを落として書いてあるけれど、これは問題を踏むバージョンを使わないようにしている。これ自体は悪い事ではない。

ログを見ると pkg-config でパッケージが探せていない事によりエラーしている事が分かる。なぜ pkg-config でパッケージが探せなくなったのか、今まで探していたのかどうか、このあたりの事情は分からない。

pkg-configはPKG_CONFIG_PATHを指定する事で、任意のディレクトリを探索パスに含める事ができる。私の環境はmacOSであり、msyqlclientはHomeBrewでインストールしている。pkg-configのファイルは .pc という拡張子で作成されるため、そのファイルを探した所、 /usr/local/lib/pkgconfig には無かったが /usr/local/Cellar/mysql-client/8.0.33_1/lib/pkgconfig には存在していた。シンボックリンクを手動で作成しても良かったが、事情がきちんと把握できていないので、 PKG_CONFIG_PATH/usr/local/Cellar/mysql-client/8.0.33_1/lib/pkgconfig を含める事にした。

それによって pkg-config --exists mysqlclient0 を返して正常終了するようになり、Pythonのmysqlclientパッケージをインストールできるようになった。