2016-10-26 116 views
2

我在macOS 10.10.5上安裝pygraphviz時遇到了麻煩。我有一個Python 2.7.x的全功能安裝,我想運行test example of queueing-tool,這需要installing pygraphviz using pipPIP安裝pygraphviz失敗:pygraphviz的建築輪失敗

當執行命令pip install pygraphviz,我得到以下漫長的錯誤消息:

Collecting pygraphviz 
    Using cached pygraphviz-1.3.1.zip 
Building wheels for collected packages: pygraphviz 
    Running setup.py bdist_wheel for pygraphviz ... error 
    Complete output from command /usr/local/opt/python/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/tmpcYcoACpip-wheel- --python-tag cp27: 
    running bdist_wheel 
    running build 
    running build_py 
    creating build 
    creating build/lib.macosx-10.10-x86_64-2.7 
    creating build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/agraph.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/graphviz.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/release.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/version.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    creating build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_attribute_defaults.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_attributes.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_clear.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_drawing.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_edge_attributes.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_graph.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_html.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_layout.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_node_attributes.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_readwrite.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_string.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_subgraph.py -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz/tests 
    copying pygraphviz/tests/test_unicode.py -> build/lib.macosx-10.10-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.10-x86_64-2.7/pygraphviz 
    copying pygraphviz/graphviz_wrap.c -> build/lib.macosx-10.10-x86_64-2.7/pygraphviz 
    running build_ext 
    building 'pygraphviz._graphviz' extension 
    creating build/temp.macosx-10.10-x86_64-2.7 
    creating build/temp.macosx-10.10-x86_64-2.7/pygraphviz 
    clang -fno-strict-aliasing -fno-common -dynamic -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c pygraphviz/graphviz_wrap.c -o build/temp.macosx-10.10-x86_64-2.7/pygraphviz/graphviz_wrap.o 
    pygraphviz/graphviz_wrap.c:3321:12: warning: incompatible pointer to integer conversion returning 'Agsym_t *' (aka 'struct Agsym_s *') from a function with result type 'int' [-Wint-conversion] 
     return agattr(g, kind, name, val); 
      ^~~~~~~~~~~~~~~~~~~~~~~~~~ 
    pygraphviz/graphviz_wrap.c:3405:7: warning: unused variable 'fd1' [-Wunused-variable] 
    int fd1 ; 
     ^
    pygraphviz/graphviz_wrap.c:3406:13: warning: unused variable 'mode_obj1' [-Wunused-variable] 
    PyObject *mode_obj1 ; 
      ^
    pygraphviz/graphviz_wrap.c:3407:13: warning: unused variable 'mode_byte_obj1' [-Wunused-variable] 
    PyObject *mode_byte_obj1 ; 
      ^
    pygraphviz/graphviz_wrap.c:3408:9: warning: unused variable 'mode1' [-Wunused-variable] 
    char *mode1 ; 
     ^
    pygraphviz/graphviz_wrap.c:3463:7: warning: unused variable 'fd2' [-Wunused-variable] 
    int fd2 ; 
     ^
    pygraphviz/graphviz_wrap.c:3464:13: warning: unused variable 'mode_obj2' [-Wunused-variable] 
    PyObject *mode_obj2 ; 
      ^
    pygraphviz/graphviz_wrap.c:3465:13: warning: unused variable 'mode_byte_obj2' [-Wunused-variable] 
    PyObject *mode_byte_obj2 ; 
      ^
    pygraphviz/graphviz_wrap.c:3466:9: warning: unused variable 'mode2' [-Wunused-variable] 
    char *mode2 ; 
     ^
    9 warnings generated. 
    clang -bundle -undefined dynamic_lookup build/temp.macosx-10.10-x86_64-2.7/pygraphviz/graphviz_wrap.o -L/usr/local/lib -L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib -lcgraph -lcdt -o build/lib.macosx-10.10-x86_64-2.7/pygraphviz/_graphviz.so 
    installing to build/bdist.macosx-10.10-x86_64/wheel 
    running install 
    Trying pkg-config 
    Package libcgraph was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libcgraph.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libcgraph' found 
    Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
    File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup.py", line 87, in <module> 
     tests_require=['nose>=0.10.1', 'doctest-ignore-unicode>=0.1.0',], 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 151, in setup 
     dist.run_commands() 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands 
     self.run_command(cmd) 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
     cmd_obj.run() 
    File "/usr/local/lib/python2.7/site-packages/wheel/bdist_wheel.py", line 215, in run 
     self.run_command('install') 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/cmd.py", line 326, in run_command 
     self.distribution.run_command(command) 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
     cmd_obj.run() 
    File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_commands.py", line 44, in modified_run 
     self.include_path, self.library_path = get_graphviz_dirs() 
    File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_extra.py", line 121, in get_graphviz_dirs 
     include_dirs, library_dirs = _pkg_config() 
    File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_extra.py", line 44, in _pkg_config 
     output = S.check_output(['pkg-config', '--libs-only-L', 'libcgraph']) 
    File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 574, in check_output 
     raise CalledProcessError(retcode, cmd, output=output) 
    subprocess.CalledProcessError: Command '['pkg-config', '--libs-only-L', 'libcgraph']' returned non-zero exit status 1 

    ---------------------------------------- 
    Failed building wheel for pygraphviz 
    Running setup.py clean for pygraphviz 
Failed to build pygraphviz 
Installing collected packages: pygraphviz 
    Running setup.py install for pygraphviz ... error 
    Complete output from command /usr/local/opt/python/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-7HXgN6-record/install-record.txt --single-version-externally-managed --compile: 
    running install 
    Trying pkg-config 
    Package libcgraph was not found in the pkg-config search path. 
    Perhaps you should add the directory containing `libcgraph.pc' 
    to the PKG_CONFIG_PATH environment variable 
    No package 'libcgraph' found 
    Traceback (most recent call last): 
     File "<string>", line 1, in <module> 
     File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup.py", line 87, in <module> 
     tests_require=['nose>=0.10.1', 'doctest-ignore-unicode>=0.1.0',], 
     File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 151, in setup 
     dist.run_commands() 
     File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands 
     self.run_command(cmd) 
     File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
     cmd_obj.run() 
     File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_commands.py", line 44, in modified_run 
     self.include_path, self.library_path = get_graphviz_dirs() 
     File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_extra.py", line 121, in get_graphviz_dirs 
     include_dirs, library_dirs = _pkg_config() 
     File "/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup_extra.py", line 44, in _pkg_config 
     output = S.check_output(['pkg-config', '--libs-only-L', 'libcgraph']) 
     File "/usr/local/Cellar/python/2.7.12_2/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 574, in check_output 
     raise CalledProcessError(retcode, cmd, output=output) 
    subprocess.CalledProcessError: Command '['pkg-config', '--libs-only-L', 'libcgraph']' returned non-zero exit status 1 

    ---------------------------------------- 
Command "/usr/local/opt/python/bin/python2.7 -u -c "import setuptools, tokenize;__file__='/private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-7HXgN6-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/x3/nr48r8q10dv1lb9l9t_yx7kh0000gq/T/pip-build-Ljj4Ox/pygraphviz/ 

我不確定如何解決上述錯誤。所有其他的Python軟件包,比如numpy或者networkx,都可以直接安裝。任何幫助將不勝感激。提前致謝。

+2

原因是:在pkg-config搜索路徑中未找到軟件包libcgraph。也許你應該將包含'libcgraph.pc'的目錄添加到PKG_CONFIG_PATH環境變量中。你可以使用谷歌找到解決方案。 – Andrew

+0

你安裝了libcgraph嗎? – Goyo

回答

2

安德魯的評論讓我走上了正確的道路。謝謝你。

事實證明,在macOS上安裝pygraphviz的詳細解決方案已經在stackoverflow上可用,請參閱this solution by teut