Python pygraphviz 安装方法

查阅了千百篇文章和教程,终于在自己的电脑上安装好了pygraphviz,下面把安装过程记录一下。

1.安装graphviz,
http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.28.0.msi。我将它安装到了我的E盘之下。
2.下载pygraphviz源码包,
http://pypi.python.org/packages/source/p/pygraphviz/pygraphviz-1.1.zip
3.解压pygraphviz的压缩包,参考网上的文章,修改了setup.py,但在我的setup文件中没有找到library_path、include_path等关键词,因此按照自己理解进行修改:

include_dirs = "E:\Graphviz\include\graphviz"
library_dirs = "E:\Graphviz\bin"

以及

extension_args['runtime_library_dirs'] = None

执行install后报错,检查发现是因为系统变量中没有VS90COMNTOOLS,但当时觉得很奇怪,VS2008和VS2010我明明都有安装,这时看到网上铺天盖地的教程都需要安装mingw32,并且需要将安装文件先编译后安装,于是立即安装了mingw32,然后对setup.py文件进行编译。于是开始了无穷尽的麻烦。
编译过程中不断地出现报错,于是自己不断地在网上查阅前辈们的安装方法和编译方法,并逐个进行尝试,包括:
1. 修改文件unixcompiler.py,(“C:\python27\lib\distutils\unixcompiler.py”)如下:
old: compiler = os.path.basename(sysconfig.get_config_var(“CC”))
new: compiler = “gcc”
2. 修改setup.py,
library_path=r’E\Graphviz\lib\release\lib’
include_path=r’E\Graphviz\include\graphviz’

library_path=r’E\Graphviz\bin’
include_path=r’E\Graphviz\include’

    ……
3. 修改所有的文件夹名称和路径,避免windows路径的问题,为路径添加字符串等以避免路径歧义、删除文件版本号等等……
试过了众多方法,我的编译始终出现‘ "graphviz/cgraph.h" no such file or dictionarary ’的问题,最终无解。

因为在一篇文章中看到有作者说他使用mingw32无法完成安装过程,于是我又将注意力投到了安装MSVC的方式。我的计算机已经安装过VS08和10,系统路径中只有VS100COMNTOOLS而没有VS90COMNTOOLS,后发现直接设置修改就可以了:

SET VS90COMNTOOLS=%VS100COMNTOOLS% 

之后我直接执行了安装过程,依然有问题,随后又修改了setup.py,

include_dirs = "E:\Graphviz\include"
library_dirs = "E:\Graphviz\bin"

以及 extension_args[‘runtime_library_dirs’] 恢复为默认,

extension_args['runtime_library_dirs'] = library_dirs

直接安装成功!

测试一下,运行examples中的simple.py,成功。结果如下:
这里写图片描述
图片结果为:
这里写图片描述

参考:
http://www.educity.cn/wenda/356881.html
http://www.cnblogs.com/lypkiller/archive/2013/01/07/2849486.html
http://stackoverflow.com/questions/8224817/installing-pygraphviz-on-windows-python-2-7
http://stackoverflow.com/questions/2798858/installing-pygraphviz-on-windows-python-2-6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值