安装Python以匹配OS X 10.5中的目录布局
在OS X 10.5上的默认Python安装是2.5.1,带有FAT 32位(Intel和PPC)客户端。我想设置apache和mysql以运行django。过去,我以32位模式运行Apache和MySQL以匹配此安装(甚至从Apache剥离64位的东西以使其正常工作)。
我想将Python升级到64位。我完全满意地使用一个警告从源代码进行编译。如何匹配默认安装的布局方式?特别是,关于站点包位于/ Library / Python / 2.5 /
中,而不是我编译后埋在框架顶部的那个。
解决方案
回答
不确定我是否完全理解问题,但是我们能否不能简单地构建并安装64位版本,然后创建符号链接,以便/Library/Python/2.5及以下版本指向Python新构建版本?
回答
从本质上讲,是的。我不确定我们是否可以那样做(当前版本不那样做)。但是,当使用python安装脚本时,没有选项(我可以找到)指定放置目录和文件的位置(例如--prefix)。我希望匹配与python相关的文件的当前布局,以免冗余文件"污染"我的计算机。
回答
就个人而言,除非我们发现问题,否则我不会担心。在* Nix系统上使用默认的python安装会造成更多麻烦,其价值不菲。我可以根据个人经验说,除非遇到问题,否则我们永远无法真正理解python对nix世界所做的贡献。
我们还可以添加第二个python安装,但这还会导致更多的问题,超出IMO值得的范围。
因此,我想开始时最好的问题是,为什么我们要使用64位版本的python?
回答
简短的答案是因为我可以。对于OP所说的话,长答案是要与apache和mysql / postgresql更兼容。它们都是64位的(apache是带有ppc,ppc64 x86和x86和x86_64的胖二进制文件,其他只是64位)。除非它们都运行相同的体系结构,否则Mysqldb和mod_python不会编译。是的,我可以全部使用32位(过去有)运行它们,但这比编译一个程序要多得多的工作。
编辑:我们几乎说服了,尽管只是让安装程序执行其操作并更新PATH以反映这一点。
回答
弓龙
可以同时安装多个版本的Python。并行安装两个版本可以解决问题,并有助于避免上述Jason Baker提出的问题。
我推荐的最简单方法是使用MacPorts,它将单独安装其所有软件。例如,默认情况下,所有内容都安装在/ opt / local中
另一种方法是简单地下载源代码并使用指定的前缀进行编译。请注意,此方法不会修改PATH环境变量,因此,如果要避免每次都键入python可执行文件的完全限定路径,则需要自己进行操作。
./configure --prefix=/usr/local/python64 make sudo make install
然后,我们可以使用mod_python的PythonInterpreter指令将Apache安装指向新版本