忍者ブログ
MASTER →  ADMIN / NEW ENTRY / COMMENT
現代魔法(nearly equal 情報技術)を勉強中な人のメモ(チラシの裏)
/ 2024/03/28 (Thu) / 編集
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

/ 2009/05/31 (Sun) / 編集
というわけで、MacOSX 10.5 Leopard にpython 3.0をインストールするメモ

なんでも下位互換がないらしいので古いpython(2.5が入ってるはず)は消さないように注意!!

readline : 6.0
Python : 3.0.1
ez_setup:3.0

readline

まずはreadlineを最新版にするっぽい

公式サイトだと重いので、ググってでてきたミラーサイトから
%wget http://ftp.yz.yamagata-u.ac.jp/pub/GNU/readline/readline-6.0.tar.gz
%tar -zxvf readline-6.0.tar.gz
%cd readline-6.0

でもって「support/shobj-conf」を一部修正
155行目あたりの「SHOBJ_LD='MACOSX_DEPLOYMENT_TARGET=10.3 ${CC}'」 ->「SHOBJ_LD='MACOSX_DEPLOYMENT_TARGET=10.5 ${CC}'」

178行目あたり「darwin[78]*) SHOBJ_LDFLAGS=''」->「darwin[789]*) SHOBJ_LDFLAGS=''」

コンパイルしてインストール
%./configure
%make
%sudo make install


Python 3.0

次はPython 3.0

%wget http://www.python.org/ftp/python/3.0.1/Python-3.0.1.tgz
%cd Python-3.0.1
%./configure --enable-framework MACOSX_DEPLOYMENT_TARGET=10.5 --with-universal-archs=all --with-readline-dir=/usr/local
%sudo make fullinstall
fullinstallすると途中でエラー
/usr/bin/install -c -s ../python.exe "/Library/Frameworks/Python.framework/Versions/3.0/Resources/Python.app/Contents/MacOS/Python"
lipo -extract i386 -extract ppc7400 -output "/Library/Frameworks/Python.framework/Versions/3.0/Resources/Python.app/Contents/MacOS/Python-32" "/Library/Frameworks/Python.framework/Versions/3.0/Resources/Python.app/Contents/MacOS/Python"
lipo: input file (/Library/Frameworks/Python.framework/Versions/3.0/Resources/Python.app/Contents/MacOS/Python) must be a fat file when the -extract option is specified
make[1]: *** [install_Python4way] Error 1
make: *** [frameworkinstallapps4way] Error 2
そこで「Python.app」とやらは飛ばして他をインストール
%sudo make frameworkinstallunixtools4way

最後に、パスを通すのを忘れずに!
デフォルトでは「/Library/Frameworks/Python.framework/Versions/3.0/」にあるはず。
Python2のコードをPython3のコードに変換してくれる「2to3」、Python本体な「Python3.0」「python3.0-config」がみえればおけ

というわけでテスト
%python3.0
Python 3.0.1 (r301:69556, May 31 2009, 11:13:22)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print("test")
test
>>>


setuptools(easy_install)のインストール

公式サイトのeasy_installはPython3.0に対応していないらしい、、、しかたないのでLennart Regebroさんが作ってくれたSetuptools for Python 3.0.1を利用する。
[Googlecode]->[svn]->[ports]->[setuptools]->[trunk]のez_setup3.0.pyを使う。


%wget http://python-incompatibility.googlecode.com/svn/ports/setuptools/trunk/ez_setup3.0.py
%sudo python ez_setup3.0.py
こんなエラーが出たら環境変数を返るべし
distutils.errors.DistutilsPlatformError: $MACOSX_DEPLOYMENT_TARGET mismatch: now "10.3" but "10.5" during configure
環境変数「MACOSX_DEPLOYMENT_TARGET」を10.5にすればいいので
setenv MACOSX_DEPLOYMENT_TARGET 10.5

ではテスト
%easy_install-3.0 --help


参考文献

[R-STYLES.NET]Python 3.0 on Leopard (Mac OS X 10.5)
Setuptools for Python 3.0.1
Python

拍手[0回]

PR
忍者ブログ [PR]