NumPy是科学计算方面的一个Python库,在数据挖掘或机器学习或科学统计等领域经常被用到,官网在这里。
在实际业务中,为发挥NumPy的高性能,在编译NumPy时会依赖一些经过特别优化的第三方科学计算库。对于初次接触NumPy的新手来说,从源码编译安装依赖外部库的NumPy通常不是一个简单的任务。
事实上,NumPy这个Python包本身不需依赖任何第三方库就能完成编译和安装使用,只不过其计算性能会受到影响。
本篇笔记记录的是如何在不依赖外部库的情况下来编译使用NumPy,这样做为了理清NumPy与第三方库的关系(相信很多NumPy初学者会分不清NumPy和几个生僻第三方库的关系,以为没有第三方库就不能编译使用NumPy)。
备注2:本篇笔记用到的gcc版本是gcc version 3.4.5,很旧的版本,不过依然可以编译最新版的NumPy v1.9.2。
1. 高性能NumPy包通常会依赖LAPACK和ATLAS库
lapack和atlas是科学计算领域的两个针对线性代数运算的经过特别优化的非常强大的工具库,关于它们的说明,可以分别查看lapack官网和at