【问题标题】:"pip install SQLAlchemy" Results in "fatal error: Python.h: No such file or directory"“pip install SQLAlchemy”导致“致命错误:Python.h:没有这样的文件或目录”
【发布时间】:2013-12-07 01:42:22
【问题描述】:

打电话

pip install SQLAlchemy

我收到一个错误:

lib/sqlalchemy/cextension/processors.c:10:20: fatal error: Python.h: No such file or directory

据我所知,我有正确的 Python 版本 (2.7.3) 和操作系统 (Ubuntu 12.04)(见下文)。我做错什么了吗?

安装确实工作

pip install --global-option='--without-cextensions' SQLAlchemy"

但我想要 C 扩展。

完整输出:

root@mycomputer:/# pip install SQLAlchemy
Downloading/unpacking SQLAlchemy
  Downloading SQLAlchemy-0.8.3.tar.gz (3.9Mb): 3.9Mb downloaded
  Running setup.py egg_info for package SQLAlchemy

    warning: no files found matching '*.jpg' under directory 'doc'
    no previously-included directories found matching 'doc/build/output'
Installing collected packages: SQLAlchemy
  Running setup.py install for SQLAlchemy
    building 'sqlalchemy.cprocessors' extension
    gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/python2.7 -c lib/sqlalchemy/cextension/processors.c -o build/temp.linux-x86_64-2.7/lib/sqlalchemy/cextension/processors.o
    lib/sqlalchemy/cextension/processors.c:10:20: fatal error: Python.h: No such file or directory
    compilation terminated.
    ***************************************************************************
    command 'gcc' failed with exit status 1
    WARNING: The C extension could not be compiled, speedups are not enabled.
    Failure information, if any, is above.
    Retrying the build without the C extension now.
    ***************************************************************************

    warning: no files found matching '*.jpg' under directory 'doc'
    no previously-included directories found matching 'doc/build/output'
    ***************************************************************************
    WARNING: The C extension could not be compiled, speedups are not enabled.
    Plain-Python build succeeded.
    ***************************************************************************
Successfully installed SQLAlchemy
Cleaning up...
root@mycomputer:/#

Python 版本:

root@mycomputer:/#python -V
Python 2.7.3
root@mycomputer:/#

Ubuntu 版本:

root@mycomputer:/#cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04 LTS"
root@mycomputer:/#

【问题讨论】:

    标签: python sqlalchemy


    【解决方案1】:

    您需要为您的 Python 版本安装 python-dev(或类似名称)包。它包括编译 C 扩展所需的所有头文件。这些文件(不幸的是)不包含在默认的python 包中。

    对于 Ubuntu,命令是

    sudo apt-get install python-dev
    

    sudo apt-get install python3-dev
    

    取决于您使用的版本。

    【讨论】:

    【解决方案2】:
    sudo apt-get install python-dev -y
    

    【讨论】:

      猜你喜欢
      • 2021-09-19
      相关资源
      最近更新 更多