OS X 10.9 SDK缺少Python.framework.为什么?另外:解决方法?

Tod*_*orf 14 python macos sdk xcode osx-mavericks

系统:

  • OS X Mavericks 10.9 13A603
  • Xcode版本5.0.1(5A2053)

问题:

Xcode的10.9 SDK似乎缺少Python.framework.

Python.framework存在于Xcode 10.8 SDK中:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Python.framework
Run Code Online (Sandbox Code Playgroud)

但是,我的Xcode 10.9 SDK中缺少它:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为Python.framework仍然可供10.9系统上的用户使用:

/System/Library/Frameworks/Python.framework
Run Code Online (Sandbox Code Playgroud)

是否有意从10.9 SDK中删除了Python.framework?这是苹果停止使用这个框架的一个不那么微妙的暗示吗?还是我只是困惑?

笔记:

这很重要,因为我有一个OS X应用程序链接Python.framework.似乎我无法使用10.9Base SDK构建设置构建我的应用程序,因为缺少Python.framework,我必须链接到它.

我对这个框架为什么缺失(或者为什么我错了,实际上没有丢失)的解释感兴趣,以及解决方法的建议.

Jea*_*nal 17

有关该主题的官方Apple支持页面:

使用Xcode 5.0嵌入Python的更改

基本上,他们所说的Python.framework是不推荐使用与SDK集成Python的方法,python.h而应该使用标准的*nix使用标头的方法.

即(以下说明是摘要 - 请查看链接的文章以获取更多详细信息):

  1. 替换#include <Python/Python.h>#include <Python.h>;
  2. 在标头搜索路径中包含Python标头位置;
  3. Python.framework从项目构建中删除;
  4. 将python .dylib文件添加到Xcode;

至于理由,他们没有详细说明,他们只是提到:

因为Python是一个框架,所以它也驻留在SDK中,即使Python(或任何脚本语言)在两个地方都有困难.由于长期和最近的问题,决定从SDK中删除Python.

  • 请注意,标准*nix的处理方式是`-I $(python-config --includes)`等等......但是在Xcode中比在自己找到位置并静态添加它更难做... (2认同)