2010年10月11日月曜日

Python 3.2 alpha 3をインストールしてみた

Pythonの公式サイトではまだ正式には告知されていませんでしたが、Python 3.2 alpha 3が公開されたようなので、試しにインストールしてみました。

自宅の環境では「Python専用ユーザでPythonバイナリを隔離してみた」の手順の結果、Python 3.1で動作するvirtualenv3が既にインストールされているので、今回は同様の手順でPython 3.2 alpha 3本体(以下、3.2a3)とdistribute-0.6.14だけ追加する事にしました。


# Python専用ユーザで作業する
sudo su python
# sudo なので、ログイン中のユーザのパスワードを入力する

# 作業用ディレクトリが無ければ準備
cd
mkdir src

# Python 3.2 alpha 3のインストール
cd ~/src
curl -O http://python.org/ftp/python/3.2/Python-3.2a3.tar.bz2
tar zxvf Python-3.2a3.tar.bz2
cd Python-3.2a3
./configure --enable-ipv6 --prefix=$HOME/local
make
# ここで、必要なら make test を実行
make install
 
# Python 3.2a3用のdistributeのインストール
cd ~/src
curl -O http://pypi.python.org/packages/source/d/distribute/distribute-0.6.14.tar.gz
tar zxvf distribute-0.6.14.tar.gz
mv distribute-0.6.14 distribute-0.6.14-3.2
cd distribute-0.6.14-3.2
~/local/bin/python3.2 setup.py install
 
# ディスク容量が足りなければ、作業用ディレクトリの後始末
cd
rm -Rf src

# 元のユーザに戻る
exit

make testの結果も
324 tests OK.
24 tests skipped:
    test_codecmaps_cn test_codecmaps_hk test_codecmaps_jp
    test_codecmaps_kr test_codecmaps_tw test_curses test_dbm_gnu
    test_epoll test_gdb test_largefile test_ossaudiodev test_readline
    test_smtpnet test_socketserver test_startfile test_timeout test_tk
    test_ttk_guionly test_urllib2net test_urllibnet test_winreg
    test_winsound test_xmlrpc_net test_zipfile64
2 skips unexpected on darwin:
    test_gdb test_readline
で特に問題はないようです。

尚、Python 3.1と同じディレクトリに3.2a3をインストールすると
  • 2to3
  • idol3
  • pydoc3
  • python3
  • python3-config
が3.2a3のファイルで上書きされるので、念のため、Python 3.1.2のファイルをmake installで上書きしておきました。

後は、

$ ~python/local/bin/virtualenv3 --python=/Users/python/local/bin/python3.2 --no-site-packages 3.2a3

を実行して、virtualenv環境を作って完了です。

出来上がったので、Python 3向けの自作のスクリプトをざっと試してみましたが、特に問題なく動作しました。
Python 3.1.2と比較するとネットワーク方面のモジュールでエラー処理が結構追加されてるようなので、場合によっては比較検証用に使う事になるかもしれません。

0 件のコメント:

コメントを投稿