2015-10-04 15 views
7

Ho problemi durante l'installazione di PyGraphviz. Sto usando Anaconda in Mac OS X.Errore durante l'installazione di PyGraphviz (Mac OS X, Anaconda)

I messaggi di errore indicano alcuni motivi, ma ho già verificato che sia installato nella directory anaconda.

Sundongui-MacBook-Pro:site-packages sundong$ pwd 
/Users/sundong/anaconda/lib/python2.7/site-packages 
Sundongui-MacBook-Pro:site-packages sundong$ pip install graphviz --upgrade 
Requirement already up-to-date: graphviz in /Users/sundong/anaconda/lib/python2.7/site-packages 

Secondo i messaggi di errore, come posso cambiare gli include_dirs e library_dirs variabili in setup.py ??

Ecco il messaggio di errore che mi capita di incontrare

Sundongui-MacBook-Pro:anaconda sundong$ pip install pygraphviz 
Collecting pygraphviz 
    Using cached pygraphviz-1.3.1.tar.gz 
Building wheels for collected packages: pygraphviz 
    Running setup.py bdist_wheel for pygraphviz 
    Complete output from command /Users/sundong/anaconda/bin/python -c "import setuptools;__file__='/private/var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-build-bLb4AR/pygraphviz/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/tmpwR_08Dpip-wheel-: 
    running bdist_wheel 
    running build 
    running build_py 
    creating build 
    creating build/lib.macosx-10.5-x86_64-2.7 
    creating build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/agraph.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/graphviz.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/release.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/version.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    creating build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/__init__.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_attribute_defaults.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_attributes.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_clear.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_drawing.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_edge_attributes.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_graph.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_html.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_layout.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_node_attributes.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_readwrite.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_string.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_subgraph.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_unicode.py -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz/tests 
    running egg_info 
    writing pygraphviz.egg-info/PKG-INFO 
    writing top-level names to pygraphviz.egg-info/top_level.txt 
    writing dependency_links to pygraphviz.egg-info/dependency_links.txt 
    warning: manifest_maker: standard file '-c' not found 

    reading manifest file 'pygraphviz.egg-info/SOURCES.txt' 
    reading manifest template 'MANIFEST.in' 
    warning: no previously-included files matching '*~' found anywhere in distribution 
    warning: no previously-included files matching '*.pyc' found anywhere in distribution 
    warning: no previously-included files matching '.svn' found anywhere in distribution 
    no previously-included directories found matching 'doc/build' 
    writing manifest file 'pygraphviz.egg-info/SOURCES.txt' 
    copying pygraphviz/graphviz.i -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    copying pygraphviz/graphviz_wrap.c -> build/lib.macosx-10.5-x86_64-2.7/pygraphviz 
    running build_ext 
    building 'pygraphviz._graphviz' extension 
    creating build/temp.macosx-10.5-x86_64-2.7 
    creating build/temp.macosx-10.5-x86_64-2.7/pygraphviz 
    gcc -fno-strict-aliasing -I/Users/sundong/anaconda/include -arch x86_64 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/Users/sundong/anaconda/include/python2.7 -c pygraphviz/graphviz_wrap.c -o build/temp.macosx-10.5-x86_64-2.7/pygraphviz/graphviz_wrap.o 
    pygraphviz/graphviz_wrap.c:2954:10: fatal error: 'graphviz/cgraph.h' file not found 
    #include "graphviz/cgraph.h" 
     ^
    1 error generated. 
    error: command 'gcc' failed with exit status 1 

    ---------------------------------------- 
    Failed building wheel for pygraphviz 
Failed to build pygraphviz 
Installing collected packages: pygraphviz 
    Running setup.py install for pygraphviz 
    Complete output from command /Users/sundong/anaconda/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-build-bLb4AR/pygraphviz/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-qgosXm-record/install-record.txt --single-version-externally-managed --compile: 
    running install 
    Trying pkg-config 
    Failed to find pkg-config 
    Trying dotneato-config 
    Failed to find dotneato-config 
    Failed to find dotneato-config 

    Your Graphviz installation could not be found. 

      1) You don't have Graphviz installed: 
       Install Graphviz (http://graphviz.org) 

      2) Your Graphviz package might incomplete. 
       Install the binary development subpackage (e.g. libgraphviz-dev or similar.) 

      3) You are using Windows 
       There are no PyGraphviz binary packages for Windows but you might be 
       able to build it from this source. See 
       http://networkx.lanl.gov/pygraphviz/reference/faq.html 

      If you think your installation is correct you will need to manually 
      change the include_dirs and library_dirs variables in setup.py to 
      point to the correct locations of your graphviz installation. 

      The current setting of library_dirs and include_dirs is: 
    library_dirs=None 
    include_dirs=None 

    error: Error locating graphviz. 

    ---------------------------------------- 
Command "/Users/sundong/anaconda/bin/python -c "import setuptools, tokenize;__file__='/private/var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-build-bLb4AR/pygraphviz/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-qgosXm-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/p6/rjy4tf353bzfy7gsl5jn_yvc0000gn/T/pip-build-bLb4AR/pygraphviz 

risposta

1

provare quanto segue (assicurarsi di avere anaconda-client installato e aggiornato):

conda install --channel https://conda.anaconda.org/garylschultz pygraphviz 
0

Graphviz può essere installato tramite homebrew: brew install graphviz .

Poi fare:

cd /usr/local/Cellar/graphviz/VERSION/include/graphviz 
mkdir graphviz 
cp cgraph.h graphviz/ 

E infine:

pip install graphviz 

provata su Sierra e wok bene.

0

Supponendo che hai già installato graphviz software:

Come descritto nella this blog post utilizzare i seguenti parametri, mentre il tentativo di eseguire pip install pygraphviz

--install-option="--include-path=/usr/local/include/graphviz/" \ 
--install-option="--library-path=/usr/local/lib/graphviz" 

Così il comando finale sarà simile pip install pygraphviz --install-option="--include-path=/usr/local/include/graphviz/" --install-option="--library-path=/usr/local/lib/graphviz".

Ciò che fa è questo esplicitamente specificato dove esistono le librerie del programma originale (graphviz) per l'estensione python da utilizzare. Sfortunatamente, questo non sembra essere riconosciuto automaticamente.

Lavorato su MacOS Sierra con Python 3.6