El capitanでpip install pylibmcした際に起きたエラー

Python

pylibmcが入らない

El capitanのmacに pylibmc をインストールしようとしていたら、エラーが起こって結構ハマってしまったので、メモしておきたいと思います。

色々試してみた対応策

  • Command Line Toolsを最新に
  • brew install libmemcached
  • shellに以下を追加
    • export CFLAGS=-Qunused-arguments
    • export CPPFLAGS=-Qunused-arguments

以前の環境では、これで通っていたのですが、これでもインストール出来ませんでした。

そして色々調べていたところ以下が問題でした。

libmemcachedのパスがおかしい

pip install pylibmc をした際に、Commandで libmemcached のパスを見に行っているのですが、これのパスが自分の場合、おかしくなっていました。

出力されたエラーでは、 libmemcached のパスが以下のような感じになっていました。

--with-libmemcached=/usr/local/Cellar/libmemcached/1.0.18/"

自分が brew install libmemcached で入れた libmemcached のバージョンは1.0.18_1となっていました。これが問題でした。

解決策としては、brew install libmemcached で1.0.18を入れたり、エイリアスを通しても良いと思うのですが、以下のやり方で今回は対応しました。

pip install時にinstall-optionを使う

以下の方法を使うことで、 libmemcached のパスを指定出来るようです。

pip install pylibmc --install-option="--with-libmemcached=/usr/local/Cellar/libmemcached/1.0.18_1/"

上記で、無事 plylibmc をインストールすることが出来ました。

思いもしないところで躓いてしまいましたが、無事インストール出来て良かったです!

最後に

MacではOSが変わることに開発環境が壊れることも少なくありません。
今後は、dockerなどの仮想環境に、開発環境を作っておくことが定石となりそうです。

コメントを残す