1.gcc和g++分别是Linux下c和cpp文件的编译器,安装只需使用如下命令:
(1).先安装 :sudo apt-get install build-essential ,然后使用gcc -v查看版本,这里要注意和下面安装的g++一致,我安装版本是4.6
(2).安装g++:sudo apt-get install g++-4.6,安装完成后用g++ -v核对下版本
2.安装Eigen
(1)下载安装包:
http://eigen.tuxfamily.org/index.php?title=Main_Page
然后解压.
(2)打开里面的INSTALL文件,这里讲用cmake的安装方式,因此,在安装前先安装cmake,命令如下sudo apt-get install cmake
(3)新建一个安装目录,进入这个目录,我新建build文件夹
cd build
cmake ../src(你的eigen的解压目录)
sudo make install
安装好的目录:
/usr/local/include/eigen3/Eigen
项目库引用地址:
INCLUDEPATH += /usr/local/include/eigen3 demo例子:#include <iostream> #include "Eigen/Dense" using namespace Eigen; int main(){ int i; //数组转矩阵 double *aMat = new double[1000000]; for(i =0;i<1000000;i++) { aMat[i] = rand()%11; } //静态矩阵,编译时确定维数 Matrix<double,4,5> Eigen:Map<Matrix<double,1000,1000> > staMat(aMat); //输出 for (int i = 0; i < staMat.size(); i++) std::cout << *(staMat.data() + i) << " "; std::cout << std::endl << std::endl; //动态矩阵,运行时确定 MatrixXd Map<MatrixXd> dymMat(aMat,4,5); //输出,应该和上面一致 for (int i = 0; i < dymMat.size(); i++) std::cout << *(dymMat.data() + i) << " "; std::cout << std::endl << std::endl; //Matrix为列优先,如下返回指针 dymMat.data(); getchar(); return 0; }