Ubuntu 下安装 IT++(itpp)源码编译版
大部分是自己摸索的,仍然存在很多问题,希望大家的帮助。
有简单的解决办法,请见:http://blog.csdn.net/baobao3456810/article/details/50921321
1. 环境:
Ubuntu 14.04
gcc / g++ 4.8.4
gfortran 4.8.4
IT++ 4.3.1
2. 你需要:
IT++:集成了数学/信号处理/通信仿真的C++仿真软件包。
FFTW3:一个快速计算离散傅里叶变换的标准C语言程序集。
LAPACK:一个包含了求解科学与工程计算中最常见的数值线性代数问题的软件包。
BLAS:基础线性代数子程序库,里面拥有大量已经编写好的关于线性代数运算的程序。应该是包含在LAPACK中。
3. 安装 FFTW3:
1 下载安装文件:FFTW3
2 解压缩,并进入文件夹
tar -xzf fftw-3.3.4.tar.gz
cd fftw-3.3.4
3 开始安装,默认安装路径为/usr/local/lib
Note: 在configure的步骤中一定要加 CFLAGS=-fPIC CXXFLAGS=-fPIC 两个参数,否则在
make IT++
时可能会出现以下错误
/usr/local/lib/libfftw3.a: error adding symbols: Bad value
sudo ./configure CFLAGS=-fPIC CXXFLAGS=-fPIC
sudo make
sudo make install
4 安装后在/usr/local/lib
中会发现多了下面两个文件
libfftw3.a (静态库文件)
libfftw3.la (libtool 工具编译出的静态库文件)
并在 /usr/local/lib/pkgconfig 下面多了一个文件
fftw3.pc
Note: pkg-config 是一个命令程序,他通过一个通用的参数从 .pc 文件里面获取一些数据来帮助调用某个函数库的程序得到正确的编译参数。
4. 安装 BLAS 和 LAPACK
据观察BLAS应该是包含在LAPACK中的,所以可以在不安装 BLAS 的情况下安装。
1 下载安装文件:LAPACK
2 解压缩,并进入文件夹
tar -xzf lapack-3.6.0.tgz
cd lapack-3.6.0
3 开始安装,默认安装路径为 /usr/local/lib
要保证系统上有 gfortran,没有可以通过 sudo apt-get install gfortran
安装
方法一:
参考文档:http://www.netlib.org/lapack/lawn81/node10.html#installation
建议能读懂 Makefile 的同学们读一下根目录的 Makefile
cp make.inc.example make.inc
sudo make blaslib
sudo make
sudo make install
方法二:
从文件夹中的文件来看,LAPACK应该是最新使用了 CMAKE,所以有第二种安装方法,注意下面的所有操作都是在cd lapack-3.6.0
后的根目录后为前提
mkdir build
sudo cmake ..
sudo make
sudo make install
Note: BLAS 会在安装 LAPACK 时自动安装
4 安装后在 /usr/local/lib 中会发现多了下面两个文件
libblas.a
liblapack.a
libtmglib.a (我也不知道是啥)
并在 /usr/local/lib/pkgconfig 下面多了一个文件
blas.pc
lapack.pc
5. 安装 IT++
1 下载安装文件:IT++
2 解压缩,并进入文件夹
tar -xzf itpp-4.3.1.tar.bz2
cd itpp-4.3.1
3 开始安装,默认安装路径为 /usr/local/lib
IT++官方文档 建议对 4.3.0
以后的版本使用 CMAKE安装
mkdir build
cd build
sudo cmake ..
sudo make
sudo make install
4 安装后在/usr/local/lib
中多了下面三个文件
libitpp.so libitpp.so.8 libitpp.so.8.2.1
并在 /usr/local/lib/pkgconfig 下面多了一个文件
itpp.pc