opencv - 如何使用新的生成器重用现有的 CMake 变量

标签 opencv cmake

我需要在 VS2015 中为 32 位和 64 位构建 OpenCV。

我知道我需要为每个生成器创建一个单独的构建树。

OpenCV 的 CMake 配置有大约 300 个用户可配置的变量,我终于得到了令我满意的设置。现在我想使用完全相同的一组决策来构建 64 位版本。

有没有办法将代表我的决定的变量值转移到新的构建树中? (除了并排打开两个 CMake-GUI 并检查所有 ~300 个值是否对应。)

顺便说一句,如果更改了生成器,则必须删除 CMakeCache.txt,根据 CMake 邮件列表 [ http://cmake.3232098.n2.nabble.com/Changing-the-the-current-generator-in-CMake-GUI-td7587876.html ].手动编辑它非常危险,可能会导致未定义的行为。

谢谢

最佳答案

将我的评论变成答案

您可以在新目录中使用部分 CMakeCache.txt(CMake 只会预加载那里的值并重新评估其余值)。

所以你可以使用类似 grep 的方法来做

findstr "OpenCV_" CMakeCache.txt > \My\New\Path\CMakeCache.txt

刚刚测试过,似乎按预期工作。

引用

关于opencv - 如何使用新的生成器重用现有的 CMake 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43083194/

相关文章:

Android studio 2.2 NDK配置错误

python - Opencv-Python cv2.CV_CAP_PROP_FPS错误

c++ - OpenGL + Kinect SDK - 如何从单个像素获取深度值?

opencv - 简单但不是 opencv 中的基本背景减法?

c++ - 使用 OpenCV、GStreamer 流式传输视频

python - Numpy:如何将颜色矩阵转换为扁平向量

CMake 条件 : comparing timestamps of files

cmake - 如何强制 ctest 只在某些子目录中运行单元测试?

c++ - 库没有链接,即使存在于链接目标中

c++ - GoogleTest CMake 链接未定义函数