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

我知道每个生成器都需要一个单独的生成树。

OpenCV的CMake配置大约有300个用户可配置的变量,我终于对它们感到满意。现在,我要使用完全相同的一组决定来构建64位版本。

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

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

谢谢

最佳答案

把我的评论变成答案

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

因此,您可以使用类似grep的方法并执行

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

刚刚测试过,似乎可以正常工作。

参考
  • What are good grep tools for Windows?
  • 10-06 03:12