【问题标题】:pip install pysqlite leads to the following error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 and `#include "sqlite3.h"`pip install pysqlite 导致以下错误: command 'x86_64-linux-gnu-gcc' failed with exit status 1 and `#include "sqlite3.h"`
【发布时间】:2015-09-03 05:33:21
【问题描述】:

pip install pysqlite 失败,并输出以下错误日志:

➜  ~  pip install pysqlite
Collecting pysqlite
  Using cached pysqlite-2.6.3.tar.gz
Installing collected packages: pysqlite
  Running setup.py install for pysqlite
    Complete output from command /home/nathan/.virtualenvs/tox/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-KwYD65/pysqlite/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-K7uywC-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/nathan/.virtualenvs/tox/include/site/python2.7/pysqlite:
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/pysqlite2
    copying lib/__init__.py -> build/lib.linux-x86_64-2.7/pysqlite2
    copying lib/dump.py -> build/lib.linux-x86_64-2.7/pysqlite2
    copying lib/dbapi2.py -> build/lib.linux-x86_64-2.7/pysqlite2
    creating build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/types.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/userfunctions.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/transactions.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/factory.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/hooks.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/__init__.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/regression.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/dump.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    copying lib/test/dbapi.py -> build/lib.linux-x86_64-2.7/pysqlite2/test
    creating build/lib.linux-x86_64-2.7/pysqlite2/test/py25
    copying lib/test/py25/__init__.py -> build/lib.linux-x86_64-2.7/pysqlite2/test/py25
    copying lib/test/py25/py25tests.py -> build/lib.linux-x86_64-2.7/pysqlite2/test/py25
    running build_ext
    building 'pysqlite2._sqlite' extension
    creating build/temp.linux-x86_64-2.7
    creating build/temp.linux-x86_64-2.7/src
    x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DMODULE_NAME="pysqlite2.dbapi2" -DSQLITE_OMIT_LOAD_EXTENSION=1 -I/usr/include/python2.7 -c src/module.c -o build/temp.linux-x86_64-2.7/src/module.o
    In file included from src/module.c:24:0:
    src/connection.h:33:21: fatal error: sqlite3.h: No such file or directory
     #include "sqlite3.h"
                         ^
    compilation terminated.
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    ----------------------------------------
Command "/home/nathan/.virtualenvs/tox/bin/python -c "import setuptools, tokenize;__file__='/tmp/pip-build-KwYD65/pysqlite/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-K7uywC-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/nathan/.virtualenvs/tox/include/site/python2.7/pysqlite" failed with error code 1 in /tmp/pip-build-KwYD65/pysqlite
 ➜  ~

快速浏览了一下stackoverflow村的其他地方,发现了这个:

"error: command 'x86_64-linux-gnu-gcc' failed with exit status 1" in virtualenv

看起来很相似,但和sqlite没有太大关系。无论如何,那里提供的解决方案都无法解决这个问题。

我使用sudo apt-get install sqlite 安装了sqlite,使用sudo apt-get instal sqlite3 安装了sqlite3,并使用sudo apt-get install sqlitebrowser 安装了sqlitebrowser。

zsh 自动完成功能还为我提供了其他几个用于 sqlite 的选项,但它们大多看起来像文档或不相关的专门扩展。

我使用 Aptitude 搜索了可能的其他依赖项,如下 (aptitude search sqlite): http://0bin.net/paste/-uv52OUbPGa5t-RJ#6VI1bgLbKqdhTUwBue0pO9yF63F3yfF++GtozB0ZI7S

当我确定其他人之前遇到过这个问题时,我认为在列表中安装任何我喜欢的库并尝试安装任何一个库是不明智的。

PySQLite 文档似乎也没有太多关于 Debian 依赖项的信息。 https://readthedocs.org/search/project/?q=dependency&selected_facets=project_exact%3Apysqlite

我的理论是我只需要正确的图书馆。如果您不知道合适的答案,请随时就如何开始更有效地搜索提出建议。

如何修复pip install pysqlite的gcc编译步骤的command 'x86_64-linux-gnu-gcc' failed with exit status 1...#include "sqlite3.h"错误?

【问题讨论】:

    标签: gcc pip pysqlite


    【解决方案1】:

    尝试通过 pip 安装sqlite3

    pip install sqlite3
    

    让我们看看这是否有效。

    【讨论】:

    • // 乔,这到底是什么意思?
    【解决方案2】:

    没有这样的标题,也许你忘了安装它们:) linux 使用 libsqlite3-dev 单独安装它们

    sudo apt-get install libsqlite3-dev
    

    【讨论】:

    • 我找不到适用于 Window 10 的这个库。感谢您的帮助。谢谢。
    • 至少对于 Ubuntu 14.04 / Python 2.7 这应该是被接受的答案!
    猜你喜欢
    • 1970-01-01
    • 2019-07-04
    • 2011-08-20
    • 1970-01-01
    • 2020-10-13
    • 2019-03-19
    • 2020-11-04
    • 2020-10-04
    • 1970-01-01
    相关资源
    最近更新 更多