MySQL-配置参数时 报错:remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu......

 报错:remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu......

 

 原因:

1、第一次配置参数时,不完整,出现错误!,(报错也会产生CMakeCache文件)

2、第二次完整的配置输入,报错 原因是前产生CMakeCache文件

 

解决:如提示删除CMakeCache文件,再重新构建

[root@controller mysql-5.6.36]# rm -rf CMakeCache.txt 

 

 什么是CMakeCache.txt及其覆盖我的变量的原因:

 CMake在构建期间重新运行时使用缓存,因为CMakeList文件已更改,或者当您使用make rebuild_cache时。它还会在正常配置运行开始时加载缓存。

使用CMake的是如下所述的标准worflow:

  1. 运行cmake在一个空的二进制目录生成项目&缓存
  2. 在CMake的GUI或ccmake或类似的初始版本,检查缓存变量由初始运行设置,并根据需要进行修改。
  3. 重新运行CMake(或者如果你的用户界面提供的话,只是其配置步骤)。
  4. 重复步骤2 & 3,直到你满意的配置
  5. 如果你只在3运行的配置,运行生成

你现在有根据自己的口味配置编译系统。

对于上述工作,缓存中的用户更改必须优先于CMakeLists.txt中指定的默认缓存值。否则,在下一次配置时,从点2开始的用户更改将丢失,并重新由项目指定的默认值覆盖。

这就是为什么CMake命令set(var ... CACHE)不修改高速缓存变量var(如果它已存在)。通常,您的项目应该将缓存设置为提供用户可调整的默认设置。

如果你真的需要覆盖的用户选择在你的项目,你可以:

  • 添加FORCEset命令,或
  • 使用set没有CACHE设置非缓存变量。非缓存变量优先于相同名称的缓存变量。
posted @ 2022-07-26 18:28  xiao智  阅读(123)  评论(0编辑  收藏  举报