请求:有人可以从上到下发布一个配方,用于创建一个Xcode项目,该项目将编译C代码以构建Python扩展吗?我在这里看过几篇涉及这个主题的帖子,但它们似乎令人困惑和不完整,并且他们不同意。
具体问题:
Mac Python 2.7可以加载.dylib吗?我冷冷地忽略了它们。
通过将.dylib重命名为.so文件扩展名,可以真正解决问题吗?各种帖子在这个问题上存在分歧。
如果Python无法加载扩展文件,是否有工具来诊断它?有什么方法可以查看文件,查看其格式,看看它是否与所需内容相匹配?
当我将.dylib重命名为.so时,收到以下错误消息:
ImportError:dlopen(/Library/Python/2.7/site-packages/pypower.so,2):找不到合适的图像。找到了: /Library/Python/2.7/site-packages/pypower.so:mach-o,但架构错误
我的项目针对的是32位英特尔"建筑。我真的需要使用32位,因为我链接的一些旧库。 Python是否会在加载32位库时遇到问题?有没有办法弥合差距?
答案 0 :(得分:0)
当前版本的Mac OS X中的Python可执行文件仅为64位,因此它加载的任何扩展名也必须是64位。如果您的库仅适用于32位系统,则无法从Python扩展链接到它。一种可能的解决方案可能是使用单独的32位可执行文件来加载库,然后从Python扩展中与该可执行文件进行通信。