在OS X 10.6上编译Python 2.5.5

在OS X 10.6上编译Python 2.5.5,python,macos,Python,Macos,我想安装Python2.5.5与Google应用程序一起使用,但一直很难找到如何安装的说明。我认为下面的方法可能有效,但我想知道是否有人成功地构建了它 ./configure --prefix=/usr/local/python2.5.5 MACOSX_DEPLOYMENT_TARGET=10.6 --enable-framework --with-universal-archs="64-bit" CFLAGS="-arch x86_64" LDFLAGS="-arch x86_64" ~:

我想安装Python2.5.5与Google应用程序一起使用,但一直很难找到如何安装的说明。我认为下面的方法可能有效,但我想知道是否有人成功地构建了它

./configure --prefix=/usr/local/python2.5.5 MACOSX_DEPLOYMENT_TARGET=10.6 --enable-framework --with-universal-archs="64-bit" CFLAGS="-arch x86_64" LDFLAGS="-arch x86_64"

~: make -j6

~: sudo make install
感谢您的帮助

您应该通过安装它,这使它非常简单。安装后

$ sudo port install python25
$ fink install python25
您应该通过安装它,这使它成为小菜一碟。安装后

$ sudo port install python25
$ fink install python25

Fink的软件包比MacPorts多。

假设您正在运行OS 10.6,如果您键入

% python<tab>
您还将看到一个条目,它只是
python
。这是在命令行中调用命令
python
时默认使用的。要查看此默认版本的版本,请在命令行中键入
python
并记下启动时打印的文本,或者执行
which python
以查看该可执行文件的绝对路径

OSX上路径中的可执行文件由链接管理,以便查看实际位置

ls -lha `which python`
ls -lha `which python2.5`
ls -lha `which python2.6`
请注意,backtics将导致运行
which
命令,并将结果插入
ls
命令

最后,您可以使用
Python\u select
命令选择默认的Python版本。我对此没有太多经验,因为我通常通过自己的软链接或shell别名来管理对Python的访问


综上所述,如果您打算安装大量用于开发目的的软件包,请尝试一下Dave Pirotte的建议。通过使用或,您将在系统Python安装之外获得新的Python安装(以及您需要的任何其他软件包)。如果您需要进行大量修改,并且如果您要努力维护Python安装的健康,那么这将非常方便。如果您不干扰默认的系统Python,那么重新开始就更容易了。

Python 2.5无法在Mac OS X 10.6上正确构建。(尽管它的构建与10.5或10.4版本一样正常。)至少有一个配置补丁需要从以后的python进行后端口。您需要使用gcc-4.0,而不是-4.2。提取源后:

cd ./Python-2.5.5/
cat >patch-configure-for-10-6.patch <<EOF
--- configure.O 2008-12-13 06:13:52.000000000 -0800
+++ configure   2010-09-29 10:16:05.000000000 -0700
@@ -2039,7 +2039,11 @@
   # disables platform specific features beyond repair.
   # On Mac OS X 10.3, defining _POSIX_C_SOURCE or _XOPEN_SOURCE
   # has no effect, don't bother defining them
-  FreeBSD/4.* | Darwin/[6789].*)
+  FreeBSD/4.*)
+    define_xopen_source=no;;
+  Darwin/[6789].*)
+    define_xopen_source=no;;
+  Darwin/1[0-9].*)
     define_xopen_source=no;;
   # On AIX 4 and 5.1, mbstate_t is defined only when _XOPEN_SOURCE == 500 but
   # used in wcsnrtombs() and mbsnrtowcs() even if _XOPEN_SOURCE is not defined
EOF
patch < patch-configure-for-10-6.patch
export CC=/usr/bin/gcc-4.0
./configure --prefix=/usr/local --enable-framework MACOSX_DEPLOYMENT_TARGET=10.6
make
sudo make install
您可以尝试在源代码树(在
Mac/BuildScript/
中)中使用安装程序构建脚本,但可能需要对其进行修补才能在10.6上正常工作


尽管2.5.5没有官方的python.org安装程序(只有安全补丁),但有一个在10.6上运行良好的安装程序。或者使用苹果提供的2.5.4。或者试试MacPorts。如果当前的Python版本支持GAE,那就太好了。

首先:为什么要手动构建Python?OSX10.6包括Python2.5和2.6,并且有官方的OSX版本可以从磁盘映像形式获得。Mac端口使它非常简单,我只是好奇是否有人自己成功编译了它。