Armadillo矩阵库的使用(一)之Armadillo的安装

来源:互联网 发布:光影魔术手mac对应软件 编辑:程序博客网 时间:2024/05/21 22:57

一.Armadillo简介

Armadillo目前使用比较广的C++矩阵运算库之一,是在C++下使用Matlab方式操作矩阵很好的选择,许多matlab的矩阵操作函数都可以找到对应,这对习惯了matlab的人来说实在是非常方便。他们之间的接口调用方式非常相似。

二、Armadillo在Windows平台下的安装

网上有很多VS平台下安装的播客,这里不多说,Windows下安装都比较简单。
这是我找到的一些文件的链接
http://www.cnblogs.com/youthlion/archive/2012/05/15/2501465.html
http://blog.csdn.net/houston11235/article/details/8266646
http://www.cnblogs.com/wacc/p/5031373.html

三.Linux和Mac平台上安装Armadillo库

第一步

确保C++编译器在你的系统上面已经安装,例如g++编译器
在Mac平台下你需要安装Xcode,关于Xcode怎么安装这里不做更多的概述。

第二步

确保你的系统上已经安装了cmake工具,如果你没有安装cmake,你可去这个网站下载:http://www.cmake.org,然后进行安装。或者使用命令行(如:yum/apt-get install cmake)。

第三步

确保lapack库和blas库在你的系统上已经安装,Mac系统不是必须的;如果想要更好的性能,建议安装OpenBLAS库,想要了解更多关于OpenBLAS,请访问:http://www.openblas.net/;如果要使用疏松矩阵, 需要安装arpack和 superlu库,superlu 5.20版本是可用的。

在Linux系统中,这些库(OpenBLAS, LAPACK, SuperLU和ARPACK)推荐应该安装才行。对于每个不同的库,必须安装与之相一致的开发文件;例如:当安装lapack包时也要安装lapack-devel或者lapack-dev包。

第四步

打开一个终端窗口,切换到armadillo库的安装目录,执行下面命令

cmake .make

cmake如果执行中断,会提示你相关需要安装在你系统上的库(例如:OpenBLAS, LAPACK, SuperLU, ARPACK等等),然后会去修改Armadillo库相应配置。cmake将会产生一个检测所有库的wrapper运行armadillo 矩阵库。

如果你要重新运行cmake,最好的办法是首先CMakeCache.txt文件

第五步:

如果你使用的是超级用户的权限,那么执行下面命令即可

sudo make install

如果你没有超级用户的权限,那么像下面这么做

make install DESTDIR=my_usr_dir

my_usr_dir这个目录是用来存储C++的头文件与源文件的

到此:如果没有出现任何问题,那么恭喜您,你已经完成该库的安装。

第六步.Linux和Mac OS下的编译与链接

在Armadillo的目录下,有案例代码,在example目录下,进入该目录后执行下面的命令

g++ example1.cpp -o example1 -O2 -larmadillo

如果你想使用Armadillo,但是你又没有安装,那么你执行下面这个命令

  g++ example1.cpp -o example1 -O2 -I /home/blah/armadillo-7.200.3/include -DARMA_DONT_USE_WRAPPER -lblas -llapack

此处很可能会提示您没有安装blas和lapack库,您安装一下就可用了。注意编译语句的armadillo库的版本,你使用的是哪一个版本是改成哪一个版本即可。

在Mac平台下,如果你有openblas,请把blas库换成openblas;把blas和lapack换成framework Accelerate。

第七步

执行编译完成后的案例example1,效果如下:
这里写图片描述

阅读全文
0 0
原创粉丝点击