2016-06-29 7 views
1

ich installieren versucht quandlPython pip Fehler installieren: Befehl 'gcc' fehlgeschlagen mit Exit-Status 1

pip install quandl 

aber ich habe folgende Fehlermeldung:

Collecting quandl 
    Using cached Quandl-3.0.1-py2.py3-none-any.whl 
    Collecting pyOpenSSL (from quandl) 
    Using cached pyOpenSSL-16.0.0-py2.py3-none-any.whl 
    Requirement already satisfied (use --upgrade to upgrade): pyasn1 in  /usr/local/lib/python3.2/dist-packages (from quandl) 
    Collecting more-itertools (from quandl) 
    Using cached more-itertools-2.2.tar.gz 
    Requirement already satisfied (use --upgrade to upgrade): six in ./.local/lib/python3.2/site-packages (from quandl) 
    Collecting ndg-httpsclient (from quandl) 
    Using cached ndg_httpsclient-0.4.1.tar.gz 
    Requirement already satisfied (use --upgrade to upgrade): numpy>=1.8 in /usr/local/lib/python3.2/dist-packages (from quandl) 
    Requirement already satisfied (use --upgrade to upgrade): python-dateutil in ./.local/lib/python3.2/site-packages (from quandl) 
    Requirement already satisfied (use --upgrade to upgrade): pandas>=0.14 in ./.local/lib/python3.2/site-packages (from quandl) 
    Collecting requests>=2.7.0 (from quandl) 
    Using cached requests-2.10.0-py2.py3-none-any.whl 
    Collecting inflection>=0.3.1 (from quandl) 
    Using cached inflection-0.3.1.tar.gz 
    Collecting cryptography>=1.3 (from pyOpenSSL->quandl) 
    Using cached cryptography-1.4.tar.gz 
    Requirement already satisfied (use --upgrade to upgrade): pytz>=2011k in ./.local/lib/python3.2/site-packages (from pandas>=0.14->quandl) 
    Requirement already satisfied (use --upgrade to upgrade): idna>=2.0 in /usr/local/lib/python3.2/dist-packages (from cryptography>=1.3->pyOpenSSL->quandl) 
    Requirement already satisfied (use --upgrade to upgrade): setuptools>=11.3 in /usr/local/lib/python3.2/dist-packages (from cryptography>=1.3->pyOpenSSL->quandl) 
    Requirement already satisfied (use --upgrade to upgrade): enum34 in /usr/local/lib/python3.2/dist-packages (from cryptography>=1.3->pyOpenSSL->quandl) 
    Requirement already satisfied (use --upgrade to upgrade): ipaddress in /usr/local/lib/python3.2/dist-packages (from cryptography>=1.3->pyOpenSSL->quandl) 
    Collecting cffi>=1.4.1 (from cryptography>=1.3->pyOpenSSL->quandl) 
    Using cached cffi-1.7.0.tar.gz 
    Requirement already satisfied (use --upgrade to upgrade): pycparser in /usr/local/lib/python3.2/dist-packages (from cffi>=1.4.1->cryptography>=1.3->pyOpenSSL->quandl) 
    Installing collected packages: cffi, cryptography, pyOpenSSL, more-itertools, ndg-httpsclient, requests, inflection, quandl 
    Running setup.py install for cffi 
    Complete output from command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-svu9h7/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-lo33rp-record/install-record.txt --single-version-externally-managed --compile: 
    Package libffi was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libffi.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libffi' found 
    Package libffi was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libffi.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libffi' found 
    Package libffi was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libffi.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libffi' found 
    Package libffi was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libffi.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libffi' found 
    Package libffi was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libffi.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libffi' found 
    running install 
    running build 
    running build_py 
    creating build 
    creating build/lib.linux-i686-3.2 
    creating build/lib.linux-i686-3.2/cffi 
    copying cffi/cparser.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/backend_ctypes.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/commontypes.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/vengine_cpy.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/verifier.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/cffi_opcode.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/model.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/api.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/setuptools_ext.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/lock.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/ffiplatform.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/__init__.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/vengine_gen.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/recompiler.py -> build/lib.linux-i686-3.2/cffi 
    copying cffi/_cffi_include.h -> build/lib.linux-i686-3.2/cffi 
    copying cffi/parse_c_type.h -> build/lib.linux-i686-3.2/cffi 
    copying cffi/_embedding.h -> build/lib.linux-i686-3.2/cffi 
    running build_ext 
    building '_cffi_backend' extension 
    creating build/temp.linux-i686-3.2 
    creating build/temp.linux-i686-3.2/c 
    gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -fPIC -DUSE__THREAD -I/usr/include/ffi -I/usr/include/libffi -I/usr/include/python3.2mu -c c/_cffi_backend.c -o build/temp.linux-i686-3.2/c/_cffi_backend.o 
    c/_cffi_backend.c:15:17: fatal error: ffi.h: No such file or directory 
    compilation terminated. 

     error: command 'gcc' failed with exit status 1 

     Command "/usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-svu9h7/cffi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-lo33rp-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-svu9h7/cffi 
You are using pip version 7.1.2, however version 8.1.2 is available. 
You should consider upgrading via the 'pip install --upgrade pip' command. 
+0

Sie müssen ein Paket installieren, das ffi.h, http://stackoverflow.com/a/38077173/5781248 enthält –

+0

Mögliches Duplikat von [PIP-Installation kann ffi.h nicht finden, obwohl es libffi erkennt] (http: //stackoverflow.com/questions/31508612/pip-install-unable-to-find-ffi-h-even-though-it-recognizes-libffi) –

Antwort

3

Sie libffi müssen verfügbar zusammen mit Entwicklungs-Header so kann dagegen kompilieren. Sie können dies tun, indem Sie apt-get install libffi-dev oder yum install libffi-devel (oder verschiedene andere Befehle für weniger häufige Distributionen) tun.

Allerdings, wenn Sie auf den neuesten Pip aktualisieren (wie Sie sehen können, schlägt es am Ende dort) können Sie es möglicherweise ohne einen Compiler oder libffi installieren! Das liegt daran, dass ich heute morgen manylinux1 Räder hochgeladen habe. Diese Räder sind vorkompiliert und werden mit einer gebündelten libffi geliefert. Wenn Sie sich für eine berechtigte Distribution entscheiden, verwendet pip automatisch diese Räder (vorausgesetzt, Sie sind auf 8.1+), während Distributionen, die sie nicht verwenden können, weiterhin wie gewohnt kompiliert werden müssen. Auch

, da die Protokolle Sie zeigen sind auch cryptography Installation werden Sie openssl-devel (auf Red Hat-Derivate) oder libssl-dev auf Debian/Ubuntu-Derivate müssen haben, dass erfolgreich kompilieren. (Und wenn Sie noch nie Python-Pakete kompiliert haben, benötigen Sie auch python-devel oder python-dev).