2015-02-10 117 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 

工作得很好。