HOWTO install Python 2.6.1 on OS X 10.5

Probleme bei der Installation?
Antworten
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Samstag 6. Dezember 2008, 14:40

Für eine Systeminstallation (mit `--enable-framework`) inklusive GNU Readline funktioniert das folgende für mich. Man muss Xcode installiert haben:

Code: Alles auswählen

curl ftp://ftp.cwru.edu/pub/bash/readline-5.2.tar.gz | tar xz

cd readline-5.2
./configure
make static
cd ..

curl http://www.python.org/ftp/python/2.6.1/Python-2.6.1.tgz | tar xz

cd Python-2.6.1
mkdir readline
cp ../readline-5.2/*.h readline/
cp ../readline-5.2/*.a .
./configure --prefix=$HOME/python3
make
# modules not built: _bsddb gdbm linuxaudiodev ossaudiodev spwd sunaudiodev
rm build/lib.macosx-10.3-i386-3.0/readline.so
make LDFLAGS=-L.
sudo mkdir -m 775 -p /usr/local/bin
sudo chgrp admin /usr/local/bin
make frameworkinstall
cd ..

export PATH=$PATH:/usr/local/bin

python2.6
Durch das Ändern der Zugriffsrechte auf /usr/local/bin braucht man kein "sudo" für das "make frameworkinstall", was ich vorziehe, um einzugrenzen, wohin Dateien gemüllt werden. Meines Wissens werden neben den Programmen unter /usr/local/bin noch `/Applications/Python 2.6` und `/Library/Frameworks/Python.framework/Versions/2.6` sowie der Link `/Library/Frameworks/Python.framework/Versions/Current` erzeugt.

IDLE als Mac-Anwendung funktioniert leidlich, ich hätte nur vermutet, es gibt einen Weg, die Schriftgröße und Farben einzustellen. Es fehlt aber offenbar das "Options"-Menü, welches die Hilfe erwähnt.

So kann man easy_install und virtualenv installieren:

Code: Alles auswählen

curl -o setuptools-0.6c9-py2.6.egg http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c9-py2.6.egg
sh setuptools-0.6c9-py2.6.egg 
ln -s /Library/Frameworks/Python.framework/Versions/2.6/bin/easy_install /usr/local/bin/easy_install-2.6
easy_install-2.6 virtualenv
ln -s /Library/Frameworks/Python.framework/Versions/2.6/bin/virtualenv /usr/local/bin/virtualenv-2.6
Allerdings komme ich ins Zweifeln, ob das Hinzufügen von `/usr/local/bin` zum Pfad wirklich eine gute Idee war, denn neue Anwendungen werden jetzt unter `/Library/Frameworks/Python.framework/Versions/2.6/bin/` installiert. Vielleicht sollte man lieber dieses Verzeichnis zum PATH hinzufügen? Doch warum müllt mir die Python-Installation dann dort die Dateien hin?

Stefan
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Samstag 6. Dezember 2008, 15:04

Nachtrag: Scheint, dass die IDLE-Konfiguration nicht angezeigt wird, da meine Tk-Version unter OS X 10.5 nur 8.4.7 ist, diese aber bei dem Test `tkversion >= '8.4.14` als größer erkannt wird. Da hat jemand einen ganz dummen Vergleich implementiert, der nicht funktionieren kann.

Wer will, kann unter `/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/idlelib` den Vergleich korrigieren. Der nun verfügbare Dialog sieht noch mieser aus als das restliche Programm, weil z.B. die Buttons viel zu klein sind. Auch hat da jemand Boxen mehr geliebt, als gut für das UI gewesen wäre. Dennoch, jetzt könnte ich eine vernünftige Schrift in augenfreundlicher Größe einstellen.

Code: Alles auswählen

--- macosxSupport.py	2008-12-06 14:56:29.000000000 +0100
+++ macosxSupport.py.orig	2008-12-06 14:56:10.000000000 +0100
@@ -89,7 +89,7 @@
 
     ###check if Tk version >= 8.4.14; if so, use hard-coded showprefs binding
     tkversion = root.tk.eval('info patchlevel')
-    if map(int, tkversion.split(".")) >= [8, 4, 14]:
+    if tkversion >= '8.4.14':
         Bindings.menudefs[0] =  ('application', [
                 ('About IDLE', '<<about-idle>>'),
                 None,
Stefan
Antworten