在哪里把Eigen外部库在Visual Studio c++项目?



我想将Eigen库添加到我的visual studio c++项目中。我下载了zip并解压到C:DownloadsEigen文件夹。然后我设置项目设置->c++→附加的包含目录。但是图书馆在我的电脑驱动器里。如果我在Github上推送项目,它在下载我的项目的客户端计算机上工作吗?我可以把本目录放在哪里?在我的项目里?或者是否有任何方法可以自动将添加的外部库包含在项目中?

一种方法是在repo中创建一个依赖文件夹,并将Eigen添加为该位置的子模块:

git clone --branch <tag_name> https://gitlab.com/libeigen/eigen.git

标签版本是可选的,但是很好的做法。您还可以克隆浅深度(--depth 1),因为您可能不需要它的历史记录。现在,您的存储库中有一个子模块,它是指向特定提交的链接,位于Eigen存储库中。一旦提交并推送了这个修改,其他人就可以通过递归克隆来拉出这个子模块:

git clone --recurse-submodules ...

或者如果他们已经有一个repo的副本,拉出最新的并运行:

git submodule update --init

我会在README.md中添加一个注释,指定存储库包含子模块。

或者,您可以使用像vcpkg或Conan这样的包管理器。这样做的好处(缺点)是避免了您自己构建依赖关系,并且是许多现代语言采用的标准方法。

最新更新