windows下,codeblocks,mingw安装matplotlib.

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

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

1 下载ipython.

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

[build]
compiler=mingw32

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

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

setup.py build

坐等即可。编译时遇到个错误,在\build\lib\IPython\utils\tests\test_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 吧.

windows下matplotlib编译安装备忘的更多相关文章

  1. nginx1.8+php5.6.10 服务器编译安装备忘2015-06

    又要重新装一台阿里云服务器.开始想用脚本,但发现脚本的程序版本都比较低  还是手动编译最新版本 开始前 更新服务器到最新版本 #yum makecache #yum update //分区挂数据盘 # ...

  2. 安装 CentOS 后的系统配置及软件安装备忘

    安装 CentOS 后的系统配置及软件安装备忘 // */ // ]]>   安装 CentOS 后的系统配置及软件安装备忘 Table of Contents 1 Linux 自举过程 1.1 ...

  3. MSDE2008安装备忘

    MSDE2008安装备忘(适用于WIN7 8 10) 1.系统中必须要VC8.0,即VC2005运行库.2.系统中必须要有.net framework2.0.3.5.4.6运行库.3.windows防 ...

  4. CentOS安装备忘2

    CentOS7安装备忘2 安装过程中不联网,安装完成也不要立刻联网,先关闭远程的服务后再联网更新.安装默认使用English,目的是生成的Home下所有文件夹都是英文的,方便使用. ========= ...

  5. Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)

    后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...

  6. Sublime Text4(Build 4126) 安装备忘

    Sublime Text4(Build 4126) 安装备忘 sublime text 4126 PJ已测可用 打开浏览器进入网站https://hexed.it 打开sublime text4安装目 ...

  7. 原创 C++应用程序在Windows下的编译、链接:第一部分 概述

    本文是对C++应用程序在Windows下的编译.链接的深入理解和分析,文章的目录如下: 我们先看第一章概述部分. 1概述 1.1编译工具简介 cl.exe是windows平台下的编译器,link.ex ...

  8. 【FFmpeg】Windows下FFmpeg编译

    由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...

  9. windows 下使用免安裝版MySql5.5

    windows 下使用面安裝版MySql5.5步驟如下 1.解壓下載的壓縮文件到指定文件夾.如:F:\DB\mysql-5.5.18-win32\mysql-5.5.18-win32: 2.在根目錄F ...

随机推荐

  1. 【转】 RGB各种格式

      转自:https://blog.csdn.net/LG1259156776/article/details/52006457?locationNum=10&fps=1 RGB组合格式 名字 ...

  2. Windows Server 2012 R2域控制器部署

    1. 概述 该文档描述了在Windows 2012R2 系统上搭建域控的方式. 2. 具体步骤 2.1 首先我们先配置好IP地址.计算名(默认的计算机名比较长,后期其它计算机加入域控的时候需要输入比较 ...

  3. servlet_filter简介

    Filter总结: 1.Filter也称之为过滤器,它是Servlet技术中最激动人心的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静 ...

  4. 两个非空的<div>元素inline-block化后出现空白部分解决办法

    在涉及到两个<div>元素并列显示的效果时,一般有两种方法: 1.使用float元素让元素并联显示: 2.将块状的<div>元素display设置为inline-block,使 ...

  5. MapReduce(五)

    MapReduce的(五) 1.MapReduce的多表关联查询. 根据文本数据格式.查询多个文本中的内容关联.查询. 2.MapReduce的多任务窜执行的使用 多任务的串联执行问题,主要是要建立c ...

  6. 拒绝服务(DoS)理解、防御与实现

    一.说明 我一直不明白为什么拒绝服务,初学着喜欢拿来装逼.媒体喜欢吹得神乎其神.公司招聘也喜欢拿来做标准,因为我觉得拒绝服务和社会工程学就是最名不副实的两样东西.当然由于自己不明确拒绝服务在代码上是怎 ...

  7. Python 同一文件中,有unittest不执行“if __name__ == '__main__”,不生成HTMLTestRunner测试报告的解决方案

    1.问题:Python中同一个.py文件中同时用unittest框架和HtmlReport框架后,HtmlReport不被执行. 2.为什么?其实不是HtmlReport不被执行,也不是HtmlRep ...

  8. docker命令脚本

    第一版: 1 #!/bin/bash #this is input docker continer shell! #this is -- # v1.1.2 read -p "请输入要执行do ...

  9. Altera FPGA SoC搭建步骤

    Altera SoC 官方搭建指南: https://rocketboards.org/foswiki/Documentation/EmbeddedLinuxBeginnerSGuide 官方文档中除 ...

  10. 马凯军201771010116《面向对象程序设计(java)》第三周学习总结

    第一部分  理论知识学习与复习部分 1.在第一章里主要对Java中常见的误解这部分进行了细读,也对Java的“白皮书”术语认真的看了一遍,对Java术语有了更深的理解. 2.在第二章中对Java程序的 ...