• windows下matplotlib编译安装备忘


    windows下,codeblocks,mingw安装matplotlib.

    python下一些源码的编译安装,备忘.

    matplotlib官网编译好的版本只支持到3.3.我不慎刚下了python3.5.强迫症发作,只好编译了.

    1 下载ipython.

    2 这个东西也要编译.因为我没装任何版本的vs,只装了个codeblocks自带mingw32.去到python目录下Libdistutils,自建一个distutils.cfg文件,里面写上:

    [build]
    compiler=mingw32

    这样当python编译时将会使用mingw32.

    3 ipython解压后,目录下就有setup.py.命令行敲入:

    setup.py build

    坐等即可。编译时遇到个错误,在uildlibIPythonutils ests est_text.py中遇到个错误,提示parse error docstring,目测是个字符串里的代码解析。我python也忘的七七八八了,猜测可能是缩进,因为进去看时这样:

        cln = """
    >>> def f(x):
    ...   return x+1
    ... 
    >>> zz = f(2.5)"""

    把字符串里的缩进变为跟cln的上几句字符串一样(8个空格).通过了

    4 解压matplotlab.

    5 坑爹的运行setup.py后发现缺少ft2build.h,总之我需要下载编译安装freetype2.

    6 然后你需要下载libpng,编译安装.

    7 还没完,你还需要下载zlib,编译安装.

    8 以上你下载好的3个库,在setup.py里并没有配置好.基本上你要干的事是让setup.py找到这3个库的头文件和lib.以下是找出的办法:

       1> 打开matplotlib目录下的setupext.py.

     2> 找到basedir_map这个变量的定义处,大概在150行.添加你这3个库的头文件目录.注意freetype2会自动连接类似freetype2的后缀.而libpng却没有,很坑.连接的后缀是在default_include_dirs变量里设置.

       3> zlib无须考虑头文件.在default_libraries变量里设置lib文件.不要用它默认的'z'.我说什么人会去改动第三方库的库名啊?而且用这么短的名字摸不着头脑简直让我暴跳如雷.

       4> 这几个文件的查找目录之一就是python目录下的include和lib.所以你的这3个库的文件最好也放在这里.

    9 以上就可以build成功了.之后就setup.py install 吧.

  • 相关阅读:
    算法笔记_091:蓝桥杯练习 递推求值(Java)
    算法笔记_090:蓝桥杯练习 7-1用宏求球的体积(Java)
    算法笔记_089:蓝桥杯练习 7-2求arccos值(Java)
    算法笔记_088:蓝桥杯练习 8-1因式分解(Java)
    算法笔记_087:蓝桥杯练习 9-1九宫格(Java)
    算法笔记_086:蓝桥杯练习 9-2 文本加密(Java)
    算法笔记_085:蓝桥杯练习 9-3摩尔斯电码(Java)
    面试(3)-java-se-java中的匿名内部类总结
    面试(2)-java-se-HashSet和TreeSet
    面试(1)-java-se-字符串
  • 原文地址:https://www.cnblogs.com/flytrace/p/3674538.html
Copyright © 2020-2023  润新知