Cython扩展编译错误 - Pycharm IDE

41

非零退出码 (1):_pydevd_bundle/pydevd_cython.c:13:20: 致命错误:Python.h:没有那个文件或目录 编译终止。 错误:命令 'x86_64-linux-gnu-gcc' 失败,退出状态为1

请帮我解决在 PyCharm 中尝试安装 Cython 时出现的此错误。


这个回答解决了你的问题吗?致命错误:Python.h:没有那个文件或目录 - ead
4个回答

49

JetBrains提供了答案:

https://www.jetbrains.com/help/pycharm/2017.3/cython-speedups.html

如果你使用Ubuntu系统,请运行以下命令:

对于Python 2.7: sudo apt-get install python-dev

对于Python 3.5: sudo apt-get install python3-dev

对于Python 3.6: sudo apt-get install python3.6-dev

对于Python 3.7: sudo apt-get install python3.7-dev


如果使用virtualenv,在激活环境后可能需要执行上述操作。 - Ramin
1
对于RHEL / CentOS,它被命名为“-devel”,例如 sudo yum install python36-devel - Noam Manos
1
在我的情况下,sudo apt-get install python3.7-dev 解决了这个问题。 - lucrib
1
对于Python 3.8,我需要运行sudo apt-get install python3.8-dev - Thomas Fritz

3
每次PyCharm进行IDE更新时,我都要花费无数小时在Linux上搜索如何再次执行它。
我想在这里记录我的答案,以便下次使用。
  1. 您必须使用系统的python
  2. 在任何操作之前,您必须安装sudo apt-get install python<your_bin_version>-dev。 注意:请在usr/bin中使用which python查找。
  3. 然而,系统的python不识别conda setuptools
  4. 因此,您还需要sudo apt-get install python3-setuptools
之后,如果您运行 PyCharm 帮助的更新位置,可以像这样:
sudo /usr/bin/python3 /<your_pycharm_installation_dir>/pycharm-2021.1/plugins/python/helpers/pydev/setup_cython.py build_ext --inplace

只有在使用基本的Python时,它才能正常工作......

接下来,我找到了最近构建的目录/_pydevd_bundle并手动(是的)将其复制到了......

/<your conda environmenbt>/.conda/envs/py39web/compiler_compat

除了Jupyter笔记本外,其他都可以。

3

对于Python 3.7版本,sudo apt install libpython3.7-dev解决了我的问题。


对我来说不起作用,“无法找到软件包libpython3.7-dev”。 - richar8086

2

适用于Python 3.9版本

sudo apt-get install python3.9-dev

4
我们不需要为每个Python的小版本都添加一个答案。除非有什么变化,否则人们会期望这种语法在将来仍然可以继续使用。如果确实有必要,您可以提出对已接受答案的编辑来包含此内容。 - Jeremy Caney

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接