2015-02-10 118 views
6

我試圖安裝python-igraph。我跑sudo pip install python-igraph後,我得到了以下日誌:未能安裝python-igraph

Downloading/unpacking python-igraph 
    Downloading python-igraph-0.7.1-1.tar.gz (375kB): 375kB downloaded 
    Running setup.py egg_info for package python-igraph 

Installing collected packages: python-igraph 
    Running setup.py install for python-igraph 
    Cannot find the C core of igraph on this system using pkg-config. 
    We will now try to download and compile the C core from scratch. 
    Version number of the C core: 0.7.1-1 

    Version 0.7.1-1 of the C core of igraph is not found among the nightly builds. 
    Use the --c-core-version switch to try a different version. 

    Could not download and compile the C core of igraph. 

    WARNING: we were not able to detect where igraph is installed on 
    your machine (if it is installed at all). We will use the fallback 
    library and include pathss hardcoded in setup.py and hope that the 
    C core of igraph is installed there. 

    If the compilation fails and you are sure that igraph is installed 
    on your machine, adjust the following two variables in setup.py 
    accordingly and try again: 

    - LIBIGRAPH_FALLBACK_INCLUDE_DIRS 
    - LIBIGRAPH_FALLBACK_LIBRARY_DIRS 

Build type: dynamic extension          
    Include path: /usr/include/igraph /usr/local/include/igraph 
    Library path: 
    Linked dynamic libraries: igraph 
    Linked static libraries: 
    Extra compiler options: 
    Extra linker options: 
    building 'igraph._igraph' extension 
    x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/igraph -I/usr/local/include/igraph -I../../build/include -I../../include -I/usr/local/include/igraph -I/usr/include/igraph -I/usr/include/python2.7 -c src/igraphmodule.c -o build/temp.linux-x86_64-2.7/src/igraphmodule.o 
    src/igraphmodule.c:25:20: fatal error: igraph.h: No such file or directory 
    #include <igraph.h> 
         ^
    compilation terminated. 
    error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 
    Complete output from command /usr/bin/python -c "import setuptools;__file__='/tmp/pip_build_root/python-igraph/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-cTa4Ba-record/install-record.txt --single-version-externally-managed: 
    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/igraph 

copying igraph/formula.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/__init__.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/configuration.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/summary.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/layout.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/cut.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/datatypes.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/utils.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/clustering.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/statistics.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/matching.py -> build/lib.linux-x86_64-2.7/igraph 

copying igraph/compat.py -> build/lib.linux-x86_64-2.7/igraph 

creating build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/operators.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/isomorphism.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/__init__.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/colortests.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/conversion.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/homepage.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/attributes.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/vertexseq.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/structural.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/separators.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/atlas.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/layouts.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/rng.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/games.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/utils.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/iterators.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/edgeseq.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/indexing.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/spectral.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/cliques.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/flow.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/basic.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/generators.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/matching.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/foreign.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/bipartite.py -> build/lib.linux-x86_64-2.7/igraph/test 

copying igraph/test/decomposition.py -> build/lib.linux-x86_64-2.7/igraph/test 

creating build/lib.linux-x86_64-2.7/igraph/app 

copying igraph/app/__init__.py -> build/lib.linux-x86_64-2.7/igraph/app 

copying igraph/app/shell.py -> build/lib.linux-x86_64-2.7/igraph/app 

creating build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/__init__.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/edge.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/shapes.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/coord.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/metamagic.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/utils.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/text.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/graph.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/colors.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/vertex.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

copying igraph/drawing/baseclasses.py -> build/lib.linux-x86_64-2.7/igraph/drawing 

creating build/lib.linux-x86_64-2.7/igraph/remote 

copying igraph/remote/__init__.py -> build/lib.linux-x86_64-2.7/igraph/remote 

copying igraph/remote/nexus.py -> build/lib.linux-x86_64-2.7/igraph/remote 

copying igraph/remote/gephi.py -> build/lib.linux-x86_64-2.7/igraph/remote 

creating build/lib.linux-x86_64-2.7/igraph/vendor 

copying igraph/vendor/__init__.py -> build/lib.linux-x86_64-2.7/igraph/vendor 

copying igraph/vendor/texttable.py -> build/lib.linux-x86_64-2.7/igraph/vendor 

running build_ext 

Cannot find the C core of igraph on this system using pkg-config. 

We will now try to download and compile the C core from scratch. 

Version number of the C core: 0.7.1-1 



Version 0.7.1-1 of the C core of igraph is not found among the nightly builds. 

Use the --c-core-version switch to try a different version. 



Could not download and compile the C core of igraph. 



WARNING: we were not able to detect where igraph is installed on 

your machine (if it is installed at all). We will use the fallback 

library and include pathss hardcoded in setup.py and hope that the 

C core of igraph is installed there. 



If the compilation fails and you are sure that igraph is installed 

on your machine, adjust the following two variables in setup.py 

accordingly and try again: 



- LIBIGRAPH_FALLBACK_INCLUDE_DIRS 

- LIBIGRAPH_FALLBACK_LIBRARY_DIRS 



Build type: dynamic extension          

Include path: /usr/include/igraph /usr/local/include/igraph 

Library path: 

Linked dynamic libraries: igraph 

Linked static libraries: 

Extra compiler options: 

Extra linker options: 

building 'igraph._igraph' extension 

creating build/temp.linux-x86_64-2.7 

creating build/temp.linux-x86_64-2.7/src 

x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/igraph -I/usr/local/include/igraph -I../../build/include -I../../include -I/usr/local/include/igraph -I/usr/include/igraph -I/usr/include/python2.7 -c src/igraphmodule.c -o build/temp.linux-x86_64-2.7/src/igraphmodule.o 

src/igraphmodule.c:25:20: fatal error: igraph.h: No such file or directory 

#include <igraph.h> 

        ^

compilation terminated. 

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

---------------------------------------- 
Cleaning up... 
Command /usr/bin/python -c "import setuptools;__file__='/tmp/pip_build_root/python-igraph/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-cTa4Ba-record/install-record.txt --single-version-externally-managed failed with error code 1 in /tmp/pip_build_root/python-igraph 
Storing complete log in /home/sergey/.pip/pip.log 

和我有類似的情況,如果我有sudo python setup.py install做到這一點。

顯然問題出在C核上。

如何安裝正確的版本以便我可以安裝igraph?

我使用Linux Mint 16 64位,python 2.7。

回答

9

在編譯python-igraph之前,您需要igraph庫。

嘗試sudo apt-get install -y libigraph0-dev並嘗試再次安裝python-igraph。

+0

我有同樣的錯誤。什麼是Windows的相應庫? – Jack 2015-12-22 10:38:26

+0

我有同樣的錯誤,但我是一個mac用戶。任何想法我可以做什麼? – 2017-08-25 17:07:28

2

對於Windows用戶

  1. Download非官方python-igraph(根據igraph official installation instruction),請根據環境選擇適當的.whl文件(Python版本,64位與32位)。
  2. 打開命令控制檯和cd到.whl的文件夾
  3. 執行以下命令:

    pip install python_igraph-0.7.1.post.xxx.whl 
    
+0

嗨,我已經下載了兩個 python_igraph-0.7.1.post6-cp34-none-win_amd64.whl python_igraph-0.7.1.post6-cp35-none-win_amd64.whl並試圖在Windows 10上安裝pip install運行Python 3.6.2的虛擬框(已安裝pycairo)。我得到這個錯誤信息返回python_igraph-0.7.1.post6-cp35-none-win_amd64.whl在這個平臺上不是支持的輪子。這是否意味着Python 3.6不受支持? – Athanassios 2017-07-24 14:44:25

0

對於Ubuntu的用戶:

的igraph的庫添加到貼​​切:

sudo add-apt-repository ppa:igraph/ppa 

然後upda te並安裝python-igraph軟件包:

sudo apt-get update 
sudo apt-get install python-igraph 
+0

我想用它來做python3。這些命令發生了什麼變化? – any 2017-05-22 18:26:31

0

使用Ubuntu 16和Python3。

pip3 install python-igraph 

導致錯誤建立whell。但是,

sudo apt-get install python3-igraph 

工作得很好。