PyCon 2014

Raspberry Piが好きなのでPyConに参加した。

PyCon 2014

Raspberry Piは教育用コンピュータとして設計され、名前にもついているようにプログラミング言語の学習についてはPythonをツールとして使っていることも多い。

とは言ってもRaspberry PiはDebianベースのLinux OSが動くのでrubyなど他の言語環境もインストールできるしPythonガン無視していた。それが「郷に入っては郷に従え」に反するなとずっとひっかかっていてRaspberry Pi上くらいはPythonちゃんと使おうかなと思ってPyConに参加してみることに。

PyCon 2014では基本的にPythonで実装されたツールやライブラリを軸にしたセッションがメインだった。scikit-learnなどPythonの機会学習系のライブラリは前から気になっていたので、ひと通り名前を知れたのは良かった。

言語のコアな話も聞きたかったが、そこについては朝一からPython 2系と3系の分断の話を聞かされてちょっと現実逃避したくなった。Pythonは遠巻きに見ているのでその辺はPythonメインで使っている人が解決してくれることを期待して、Raspberry PiではPython 2を使っていれば良いのだろうか。

Pebbleアプリ開発のためHomebrewのPython環境整理

Pebbleは自分でWatchアプリを開発することができる。PebbleのSDKかツールがPythonに依存しているようだ。OS Xの場合Install Pebble SDK on Mac OS Xにセットアップガイドがある。

ガイド通りに順調に進めていって sudo easy_install pip あたりで「ん?」と思ったのだが手順ではシステムのPythonを使うようである。OS Xには標準でPythonやRubyがなどのプログラミング言語がインストールされている。

しかし自分の環境ではPythonをはHomebrewから入れていてしかも、何か環境がおかしかったのを放置していたので整理。

結論からいうと環境がおかしかったのは一部のファイルのパーミッションがおかしいという pip fails to upgrade distribute and pip にある問題だったので

cd /usr/local/Cellar/python/2.7.5/bin
chmod u+w easy_install* pip*

で解決した。

HomebrewにおけるPythonの注意事項は Homebrew and Python にまとまっている。Homebrewの場合Python formulaがpipを入れてくれるので手順の sudo easy_install pip は不要である。というかsudoで何かやるとファイルの所有者がおかしくなるおそれがあるので注意が必要。

またHomebrewでは pip install --user が無効にされている。Homebrew自体がユーザ権限で使えるので--userオプションは不要と判断して、依存モジュールのインストールは

pip install -r Pebble/sdk/requirements.txt

で行った。

まとめるとHomebrewの場合、「Download and install SDK dependencies」の件は

brew install python
brew install freetype
cd ~/pebble-dev/PebbleSDK-1.12/
pip install -r Pebble/sdk/requirements.txt

で良いのではなかろうか。