Python pip安装失败,错误代码为1 [英] Python pip install failing with error code 1

查看:306
本文介绍了Python pip安装失败,错误代码为1的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用CentOS6,并且能够安装python2.7。创建virtualenv之后,我已经开始安装各种python软件包。我可以轻松地安装一些软件包,例如请求等。但是安装Numpy,scipy,gensim,pycurl之类的软件包非常麻烦。它不断给我这个错误:

I am working on CentOS6 and have been able to install python2.7. After creating a virtualenv I have started installing various packages of python. I can install some packages easily like requests,etc. but installing packages like Numpy, scipy, gensim, pycurl are a huge pain. It keeps on giving me this error:

通过在安装了python2.7的virtualenv内部运行 pip install pycurl 我遇到了问题。

By running pip install pycurl from within the virtualenv with python2.7 installed I am running into the problem.

Collecting pycurl
  Downloading pycurl-7.19.5.1.tar.gz (142kB)
    100% |████████████████████████████████| 143kB 2.8MB/s
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module>
      File "/tmp/pip-build-ClD2EM/pycurl/setup.py", line 634, in <module>
        ext = get_extension(split_extension_source=split_extension_source)
      File "/tmp/pip-build-ClD2EM/pycurl/setup.py", line 392, in get_extension
        ext_config = ExtensionConfiguration()
      File "/tmp/pip-build-ClD2EM/pycurl/setup.py", line 65, in __init__
        self.configure()
      File "/tmp/pip-build-ClD2EM/pycurl/setup.py", line 100, in configure_unix
        raise ConfigurationError(msg)
    __main__.ConfigurationError: Could not run curl-config: [Errno 2] No such file or directory

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-ClD2EM/pycurl

I无法解决此setup.py egg_info问题。

I am not abel to fix this setup.py egg_info problem.

运行 yum安装libcurl ,然后运行 pip install pycurl 我得到了:

After running yum install libcurl and then running pip install pycurl i got this:

Collecting pycurl
  Using cached pycurl-7.19.5.1.tar.gz
Building wheels for collected packages: pycurl
  Running setup.py bdist_wheel for pycurl
  Complete output from command /home/pgupta/python27_project/bin/python2.7 -c "import setuptools;__file__='/tmp/pip-build-bH6H_j/pycurl/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpG3CwZBpip-wheel-:
  Using curl-config (libcurl 7.19.7)
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/curl
  copying python/curl/__init__.py -> build/lib.linux-x86_64-2.7/curl
  running build_ext
  building 'pycurl' extension
  creating build/temp.linux-x86_64-2.7
  creating build/temp.linux-x86_64-2.7/src
  gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPYCURL_VERSION="7.19.5.1" -DHAVE_CURL_SSL=1 -I/usr/include/python2.7 -c src/docstrings.c -o build/temp.linux-x86_64-2.7/src/docstrings.o
  In file included from src/docstrings.c:4:
  src/pycurl.h:4:20: error: Python.h: No such file or directory
  src/pycurl.h:5:22: error: pythread.h: No such file or directory
  src/pycurl.h:56:4: error: #error "Need Python version 2.4 or greater to compile pycurl."
  src/pycurl.h:165:5: warning: #warning "libcurl was compiled with SSL support, but configure could not determine which " "library was used; thus no SSL crypto locking callbacks will be set, which may " "cause random crashes on SSL requests"
  In file included from src/docstrings.c:4:
  src/pycurl.h:232: error: expected ‘)’ before ‘*’ token
  src/pycurl.h:234: error: expected ‘)’ before ‘*’ token
  src/pycurl.h:236: error: expected ‘)’ before ‘*’ token
  src/pycurl.h:286: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
  src/pycurl.h:328: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
  src/pycurl.h:343: error: expected specifier-qualifier-list before ‘PyThread_type_lock’
  src/pycurl.h:347: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
  src/pycurl.h:397: error: expected ‘)’ before ‘*’ token
  src/pycurl.h:398: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:406: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:408: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:410: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:415: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘Curl_Type’
  src/pycurl.h:416: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘CurlMulti_Type’
  src/pycurl.h:417: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘CurlShare_Type’
  src/pycurl.h:419: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:420: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:421: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:422: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:424: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:425: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  src/pycurl.h:426: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
  error: command 'gcc' failed with exit status 1

  ----------------------------------------
  Failed building wheel for pycurl
Failed to build pycurl
Installing collected packages: pycurl
  Running setup.py install for pycurl
    Complete output from command /home/pgupta/python27_project/bin/python2.7 -c "import setuptools, tokenize;__file__='/tmp/pip-build-bH6H_j/pycurl/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-Iit36I-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/pgupta/python27_project/include/site/python2.7/pycurl:
    Using curl-config (libcurl 7.19.7)
    running install
    running build
    running build_py
    running build_ext
    building 'pycurl' extension
    gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DPYCURL_VERSION="7.19.5.1" -DHAVE_CURL_SSL=1 -I/usr/include/python2.7 -c src/docstrings.c -o build/temp.linux-x86_64-2.7/src/docstrings.o
    In file included from src/docstrings.c:4:
    src/pycurl.h:4:20: error: Python.h: No such file or directory
    src/pycurl.h:5:22: error: pythread.h: No such file or directory
    src/pycurl.h:56:4: error: #error "Need Python version 2.4 or greater to compile pycurl."
    src/pycurl.h:165:5: warning: #warning "libcurl was compiled with SSL support, but configure could not determine which " "library was used; thus no SSL crypto locking callbacks will be set, which may " "cause random crashes on SSL requests"
    In file included from src/docstrings.c:4:
    src/pycurl.h:232: error: expected ‘)’ before ‘*’ token
    src/pycurl.h:234: error: expected ‘)’ before ‘*’ token
    src/pycurl.h:236: error: expected ‘)’ before ‘*’ token
    src/pycurl.h:286: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
    src/pycurl.h:328: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
    src/pycurl.h:343: error: expected specifier-qualifier-list before ‘PyThread_type_lock’
    src/pycurl.h:347: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
    src/pycurl.h:397: error: expected ‘)’ before ‘*’ token
    src/pycurl.h:398: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:406: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:408: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:410: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:415: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘Curl_Type’
    src/pycurl.h:416: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘CurlMulti_Type’
    src/pycurl.h:417: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘CurlShare_Type’
    src/pycurl.h:419: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:420: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:421: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:422: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:424: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:425: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    src/pycurl.h:426: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
    error: command 'gcc' failed with exit status 1

    ----------------------------------------
Command "/home/pgupta/python27_project/bin/python2.7 -c "import setuptools, tokenize;__file__='/tmp/pip-build-bH6H_j/pycurl/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-Iit36I-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/pgupta/python27_project/include/site/python2.7/pycurl" failed with error code 1 in /tmp/pip-build-bH6H_j/pycurl


推荐答案

您需要一个 libcurl开发库。用yum来获取它:

You need a libcurl development library. Get it with yum:

yum install libcurl-devel

编辑:安装后,您似乎仍然缺少一些依赖项。您需要 Python开发库,并通过yum进行获取,如下所示:

After you installed it, you appear to have some missing dependencies, still. You need Python development library, get it with yum as follows:

yum install python-devel

如果上述安装无法正常工作,请尝试 rpm ,而不要下载此文件适用于CentOS的Python开发RPM 。然后通过rpm安装它:

If the installation above doesn't work, try rpm instead by download this Python-devel RPM for CentOS. Then install it via rpm:

rpm -ivh python-devel-2.7.5-18.el7_1.1.x86_64.rpm

这篇关于Python pip安装失败,错误代码为1的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆