为啥致命错误:安装 PyYAML 时找不到“yaml.h”文件?

Posted

技术标签:

【中文标题】为啥致命错误:安装 PyYAML 时找不到“yaml.h”文件?【英文标题】:Why fatal error: 'yaml.h' file not found when installing PyYAML?为什么致命错误:安装 PyYAML 时找不到“yaml.h”文件? 【发布时间】:2016-03-13 21:22:08 【问题描述】:

我正在尝试下载 PyYAML 并按照此处的说明安装它 http://pyyaml.org/wiki/PyYAML

所以我下载了 ZIP 包:http://pyyaml.org/download/pyyaml/PyYAML-3.11.zip,然后 cd 进入该文件夹并运行python setup.py --with-libyaml install,我得到的错误消息是ext/_yaml.h:2:10: fatal error: 'yaml.h' file not found

但我检查了 PyYAML-3.11 文件夹,yaml.h 在那里...

更新:我尝试了这里的方法http://sandlininc.com/?p=500

$ sudo easy_install pip$ brew install libyaml$ sudo easy_install setuptools$ pip install -U PyYAML

然后我又试了python setup.py --with-libyaml install。我收到消息error: /Library/Python/2.7/site-packages/_yaml.so: Permission denied

我错过了什么吗?为什么权限被拒绝?谢谢!

【问题讨论】:

您在哪个发行版上?您是否安装了包含 yaml.h 头文件的 yaml 开发包?如果您使用的是 Debian,请以 root 身份尝试: apt-get install libyaml-dev . 您好,谢谢!我正在使用 osx...我已经更新了我的问题并且很好奇为什么权限被拒绝?? 仅供参考,我认为这至少在 Catalina (10.15.4) 或之前的某个时候被打破了。我不记得它最后一次工作是什么时候了。 【参考方案1】:

您可以通过添加所需的依赖库后重新安装pyyaml包来解决该问题。步骤如下:

    卸载pyyaml

pip uninstall pyyaml

    安装以下包

apt-get install libyaml-dev libpython2.7-dev

    再次安装pyyaml

pip install pyyaml

【讨论】:

【参考方案2】:

MacOS 中解决了这个问题:

pip3 uninstall PyYaml
pip3 install PyYaml==5.2

【讨论】:

以上是关于为啥致命错误:安装 PyYAML 时找不到“yaml.h”文件?的主要内容,如果未能解决你的问题,请参考以下文章

致命错误:未捕获的错误:在 magento 2 中刷新缓存时找不到类“DOMDocument”

为啥会出现错误:在 truffle 上编译时找不到导入

为啥我使用 setup.py 安装时找不到 ansible?

为啥使用 Origin 标头时找不到路由

为啥使用 RDP 时找不到远程 SmartCard

为啥致命错误:未捕获的错误:找不到类“Illuminate\Foundation\Application”