Win10系统VS2019+Cmake+Eigen3.3.8环境配置

1. Eigen

1.1 简要介绍

Eigen是可以用来进行线性代数、矩阵、向量操作等运算的C++库,包含了绝大部分矩阵算法;
Eigen一个重要特点是采用源码的方式提供给用户使用,在使用时只需要包含Eigen的头文件即可进行使用。之所以采用这种方式,是因为Eigen采用模板方式实现,由于模板函数不支持分离编译,所以只能提供源码而不是动态库的方式供用户使用,因此非常轻量而易于跨平台。

1.2 依赖库

Eigen不需要再配置其他库。

1.3 源码包下载

Eigen源码地址:
github:https://gitlab.com/libeigen/eigen.git

2. Cmake构建项目

2.1 路径

源代码路径:D:/ThirdParty/eigen/eigen_3.3.8
构建项目路径:D:/ThirdParty/eigen/eigen_3.3.8_build

2.2 构建选项

名称 备注
BUILD_TESTING false 减少编译时间
CMAKE_INSTALL_PREFIX path 编译时生成的安装文件路径

2.3 构建项目

image.png
步骤如下:

  1. 指定源码路径;
  2. 指定构建项目路径;
  3. 点击Configure
  4. 按照2.2节表中的值进行设置;
  5. 再次点击Configure
  6. 点击Generate,构建项目路径中将生成解决方案文件Eigen3.sln

点击ConfigureGenerate后,如果顺利,会出现Configuring doneGenerating done

3. 打开解决方案并编译

3.1 编译解决方案

点击Open Project(或者在2.3节步骤2中指定的构建项目路径中,找到生成的解决方案文件Eigen3.sln,通过Visual Studio打开),打开通过Cmake构建的项目;
选中ALL_BUILD项目,分别在DebugRelease模式下,重新生成解决方案。
image.png
如果将BUILD_TESTING选项置为false,该过程将很快,因为没有构建任何测试项目。

3.2 安装Eigen

image.png
选中INSTALL项目,右击,重新生成,此时,将会在指定路径下(2.2节表中CMAKE_INSTALL_PREFIX选项的值)生成两个文件夹includeshare

4. 实际项目环境配置

注:以下通过属性表的方式进行环境配置。

4.1 附加包含目录

image.png

  1. $(eigen)\include\eigen3

$(eigen)(在系统环境变量中添加并设置)就是2.2节表中CMAKE_INSTALL_PREFIX选项的值。

4.2 测试代码

#include 
#include 

int main()
{
	Eigen::Matrix2d a;
	a << 1, 2,
		3, 4;
	Eigen::MatrixXd b(2, 2);
	b << 2, 3,
		1, 4;
	std::cout << "a + b =\n" << a + b << std::endl;
	std::cout << "a - b =\n" << a - b << std::endl;
	std::cout << "Doing a += b;" << std::endl;
	a += b;
	std::cout << "Now a =\n" << a << std::endl;
	std::cout << "a^T=  " << a.transpose() << std::endl;
	std::cout << "a*b= " << a * b << std::endl;
	Eigen::Vector3d v(1, 2, 3);
	Eigen::Vector3d w(1, 0, 0);
	std::cout << "-v + w - v =\n" << -v + w - v << std::endl;
	std::cout << v << std::endl;
	std::cout << v.transpose() << std::endl;
	system("pause");
	return 0;
}

你可能感兴趣的:(#,软件安装及环境搭建,开发语言)