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. hihocoder #1044 : 状态压缩·一 状压DP

    http://hihocoder.com/problemset/problem/1044 可以看出来每一位的选取只与前m位有关,我们把每个位置起始的前m位选取状态看出01序列,就可以作为一个数字来存储 ...

  2. nginx优化参考

    参考链接:http://blog.sina.com.cn/s/blog_4f9fc6e10102uxib.html 计算访问路径频度 awk -r|more |grep /路径 ps print &a ...

  3. 微服务-开发框架之springboot by 大雄daysn

    目录 一.关于springboot 二.springboot的实践 2.1发布一个rest的api 2.2端点 2.3健康检查 2.4远程监控 一.关于springboot 由来:spring1.0- ...

  4. php加密

    域名授权函数 function allow_doamin(){    $is_allow=false;    $url=trim($_SERVER['SERVER_NAME']);    $arr_a ...

  5. Angular2 NgModule 模块详解

    原文  https://segmentfault.com/a/1190000007187393 我们今天要学习的是Angular2的模块系统,一般情况下我们使用一个根模块去启动我们的应用,然后使用许多 ...

  6. vue,在模块中动态添加dom节点,并监听

    在这里,onclick事件没有作用,因为它指向的是window,如果写为this.click页面显示为undefined, 我采用的是通过class绑定事件,但是会有一个问题,那就是当你渲染多个事件时 ...

  7. 剑指Offer 4. 重建二叉树 (二叉树)

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  8. echarts双y轴折线图柱状图混合实时更新图

    先看下效果,自己用ps做了张gif图,发现很好玩啊..不喜勿喷 自己下载个echarts.min.js 直接上代码: <!DOCTYPE html><html><head ...

  9. python基础--列表、元祖、字典、集合

    列表(List) 1.列表特点 列表是可变的!! list 是一种有序的序列,可以添加.删除其中的元素,并且可以通过下标(索引)访问 数据 2.简单的常用操作 A.通过下表访问元素 print(lis ...

  10. go语言入门(Hello World)

    package main import "fmt" func main(){ fmt.Println("Hello world") }