2013-04-03 89 views
0

我有一个python应用程序主要依赖matplotlib,tkinter,numpy和scipy我一直在为多个操作系统分发。我在python.org的python.org版本的基础上构建它们。对于mac,我在过去用py2app和pyinstaller构建了我的应用程序的独立版本,取得了很好的成功。然而,最近我已经包含了需要patsy,pandas和igraph的函数,为了让igraph能够运行,必须移动到python 2.6的mac分发版本。所有工程建设我在Mac上软件的py2app版本为我的OS(10.6),但很好,当我在10.8上运行我遇到了以下错误:Py2app与本机Python 2.6

Traceback (most recent call last): 
File "UI.pyc", line 603 createHeatMap 
File "clustering.pyc", line 31, in <module> 
File "mpl_toolkits/__init__.pyc", line 2, in <module> 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 698, in <module> 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 701, in Environment 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 96, in get_supported_platform 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/Extras/lib/python/pkg_resources.py", line 222, in get_build_platform 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/util.py", line 98, in get_platform 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/sysconfig.py", line 537, in get_config_vars 
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/sysconfig.py", line 405, in _init_posix 
DistutilsPlatformError: invalid Python installation: unable to open /user/include/python2.6/pyconfig.h (No such file or directory) 

这是通过将文件保存pyconfig.h固定目标机器上的指定位置(10.8中不存在,但存在于10.6中),这允许我的应用程序正常工作。在我的py2app pacakge目录的“Contents/Resources”下,有一个指向目录“include”的sym-link指向:/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6/pyconfig 。H。如果我将pyconfig.h文件作为附加资源包含在py2app安装文件中,它也将其包含在软件包中,但仍然无法识别。

任何人都可以提出一个很好的解决方法,这不需要我使用python.org版本的python(我已经得到了可怕的运气使igraph与此工作)。

谢谢...

+0

对此,一个不理想的解决方法是我在/usr/local/bin/python2.6(选项:./configure --enable-shared)下安装python.org的python.org版本,然后sym将所有站点包和安装工具目录链接到先前安装的OSX本机Python 2.6 python目录。这样,我可以继续使用Mac Python的本地版本进行日常使用和库安装,但是可以使用python.org版本专门执行py2app构建。这消除了igraph安装的问题,并构建了一个适用于OSX 10.6和10.8的py2app二进制应用程序。 – nateS 2013-04-06 19:39:34

回答