我正在尝试编译各种python扩展(pycrypto,paramiko,subvertpy.)在MacOSX10.6上,它们将与MacOSX10.5及其内置python 2.5兼容,以便包含在针对MacOSX10.5的产品安装程序中。
我真的不知道该怎么做。我在谷歌上翻来覆去,发现了a question here on stackoverflow,这导致我在构建之前在我的环境中设置了MACOSX_DEPLOYMENT_TARGET=10.5,但这给了我一个错误:
distutils.errors.DistutilsPlatformError:$MACOSX_DEPLOYMENT_TARGET错配:现在在配置过程中"10.5“但"10.6”
例如,我在MacOSX10.6上使用python2.5运行构建:
$ python2.5 setup.py安装
我还遇到了对/Developer/SDKs/MacOSX10.5.sdk的引用,但我不太确定如何使用它。
发布于 2010-05-21 16:35:23
我设法让distutils相信Python是构建在Leopard上的,在调用setup.py中的setup()之前插入了以下代码:
# XXXHACK: make distutils believe that Python was built on Leopard.
from distutils import sysconfig
their_parse_makefile = sysconfig.parse_makefile
def my_parse_makefile(filename, g):
their_parse_makefile(filename, g)
g['MACOSX_DEPLOYMENT_TARGET'] = '10.5'
sysconfig.parse_makefile = my_parse_makefile然后,在将MACOSX_DEPLOYMENT_TARGET设置为"10.5“之后,使用python2.5很好地构建雪豹。我不能保证它能很好地工作,但是在我的Macbook Air运行Leopard的Macbook Air上,pycrypto的捆绑测试套件通过了,所以看起来不错。
https://stackoverflow.com/questions/2871013
复制相似问题