Xcode的10.9sdk中似乎缺少Python.framework。
Xcode 10.8 SDK中存在Python.framework:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Python.framework
但是,我的Xcode 10.9 SDK中缺少它:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/
这很奇怪,因为Python.framework对于10.9系统的用户仍然可用:
/System/Library/Frameworks/Python.framework
是否有意将Python.framework从10.9sdk中删除?这难道不是苹果公司停止使用这个框架的一个不那么微妙的暗示吗?还是我只是困惑?
这很重要,因为我有一个OSX应用程序,它链接到Python.framework。由于缺少Python.framework,我似乎无法使用基本SDK构建设置10.9来构建我的应用程序,我必须链接到它。
我对这个框架为什么会丢失(或者为什么我错了,它实际上没有丢失)的解释和解决方法的建议都感兴趣。
有一个官方的苹果支持页面:
Changes To Embedding Python Using Xcode 5.0
基本上,他们所说的与Python集成到SDK的方法
Python.framework
已经被弃用,而应该使用使用python.h
头的标准*nix方法。也就是说(下面的说明是一个摘要-请查看链接的文章了解更多详细信息):
#include <Python.h>
替换#include <Python/Python.h>
Python.framework
.dylib
文件添加到Xcode至于理由,他们没有详细说明,只是提到:
我也遇到了(并且解决了)这个问题:
最初我突然想到的是,我正在使用的gnu libtool已经在
-F
前面附加了-Wl
标志。所以,我补充说然后,另一件很明显的事情是,'-framework Python'没有像往常一样的.framework后缀。所以,我也加了一句
我还是没办法把事情做好。然后我发现是什么:
长话短说,我不知道它为什么工作,也不知道他们为什么改变了什么,我特别恼火的是Python.framework已经不在SDK中了(当然,链接到它总是很奇怪,但我需要一段时间来重新训练自己。。
-framework
只需更改为-f
另外,还有一个Python系统范围的设置对象,以及需要修复的“Python config”CLI程序,这样它们就不再支持这个糟糕的设置了。
看起来Python.framework被苹果故意删除了:
https://developer.apple.com/library/mac/releasenotes/General/APIDiffsMacOSX10_9/index.html
苹果公司的10.9api diff文档显示它已经被删除。
相关问题 更多 >
编程相关推荐