4

我有一个 PyObjC 项目,我使用 XCode 3.2 在 Mac OS X 10.6 上构建,但无法在 10.5 上运行。

我使用的是官方 PyObjC 项目模板来创建一个空项目(它只是打开一个窗口)。然后我构建应用程序并将其复制到 10.5。但该应用程序总是在 10.5 上崩溃:

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException',
reason: '/Users/hupf/Development/PyHelloWorld/main.m:44 main() PyRun_SimpleFile failed
with file '/Users/hupf/Desktop/PyHelloWorld.app/Contents/Resources/main.py'.  See
console for errors.'

我该怎么做才能让它在 10.5 上运行?为什么我的 10.6 机器上还有这条路径/Users/hupf/Development/ ?

问候,hupf

PS我还在我的10.6机器上通过MacPorts安装了Python......这可能是个问题吗?

4

1 回答 1

0

我对 PyObjC 一无所知,但您的项目正在使用 Xcode,那么您只需将项目的部署目标设置为您希望运行应用程序的最旧操作系统版本。(仅供参考:SDK 版本定义了您的应用程序将在其上运行的操作系统的最新版本。)另请注意,在部署目标版本之后添加的任何 API 都将是弱链接的,这意味着如果您在那些 API 所在的旧操作系统上运行不存在,它们将为零;如果你打电话给他们,你会崩溃。(所以你应该总是在调用它们之前检查它们!= nil)。

同样,这不一定是 PyObjC 的答案;YMMV…</p>

于 2010-06-29T18:22:28.433 回答