柯南如何帮助CMake查找DLL的位置?

时间:2019-07-12 13:02:48

标签: c++ cmake conan

我有一个创建共享库的项目。该项目使用柯南来管理其依赖项,其中之一是OpenCV。根据公司政策,我们不使用opencv_world,而是始终使用共享库,因此,柯南会安装数百个.lib.dll文件。

我正在开发的项目包括多个可执行文件来运行测试-单元,集成,配置文件等,但是这些测试需要具有依赖项dll的路径。我的问题是,如何管理这些路径?

有没有办法自动将文件的位置从柯南传递到cmake?

我应该手动找到文件的位置并将其手动传递给CMake吗?

2 个答案:

答案 0 :(得分:1)

这就是我所做的:

1)将柯南项目生成器更改为virtualrunenv并按照说明安装软件包。

2)启动developer prompt,或从任何命令行窗口执行启动时运行的脚本。

3)从Visual Studio中打开CMake项目。

4)运行测试。现在所有库都可用。

答案 1 :(得分:0)

您必须成功找到opencv,以便可以获得相关的缓存cmake变量。从这些变量之一获取opencv的dll路径(通过在cmake文件中编写脚本),并将其写入.bat(windows)或.sh(linux / mac)文件。该外壳脚本文件应临时将dll路径添加到PATH变量,然后进行单元测试。不知道这是否依赖于柯南,因为我从没使用过。