首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mac上的Cython和clang,"Python.h找不到“

mac上的Cython和clang,"Python.h找不到“
EN

Stack Overflow用户
提问于 2021-12-03 09:37:07
回答 1查看 507关注 0票数 3

我在mac上运行clang来编译通过cython运行一个非常简单的程序创建的c文件,但是编译器总是给我一个“Python.hNotfind”致命错误。我已经尝试了我能找到的每一个解决方案,重新安装python3.9,使用-I/path/ to /headerfile方法,并重写代码中的include语句来包含完整的文件路径,但是没有什么效果。当我包含完整的filepath时,我会得到致命的错误:'cpython/initconfig.h‘文件找不到。问题可能是什么,我该如何解决呢?该程序本身在标准python解释器、pyinstaller和nuitka中运行良好。

EN

回答 1

Stack Overflow用户

发布于 2022-10-01 12:49:31

今天,我需要将Python嵌入到用Clang编译器在XCode上开发的C应用程序中,并且遇到了同样的问题并解决了它们。让我分享一下以下几点:

1. Python找不到错误

您应该将Python安装到MacOS中,并将其附加到Frameworks and Libraries项目设置选项卡中。此外,如果Framework Search Paths尚未自动完成,则在Build Settings选项卡中指定它的路径。

2.未定义的符号/隐式声明错误

验证您使用的是Python框架的现代版本。3.6之前的版本有不同的ABI,从而导致上述错误。

3.找不到cpython/initconfig.h文件

~3.9之前的版本有一些cpython/initconfig.h文件的头包含问题(问题是4064239026)。

检查您的操作系统当前的Python构建。我发现Pythons安装在以下路径中:

代码语言:javascript
运行
复制
# Default 2.7 MacOSX installation is here
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/

/Applications/Xcode.app/Contents/Developer/Library/Frameworks/

/Library/Frameworks/

或者安装一个最新的Python版本。我建议使用“通用二进制”构建,看医生

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70212164

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档