CMake“cmake --list-presets”会导致“源目录不存在”

w46czmvw  于 2022-11-24  发布在  其他
关注(0)|答案(1)|浏览(151)

我正在尝试在Gitlab runner中构建一个CMake项目。
运行cmake版本3.18.4
我正在遵循Microsoft的此文档
我在存在CMakePresets.json文件的源目录中运行此命令:

cmake --list-presets

我希望预设列表显示在命令行中,如下所示:

Available configure presets:

  "x64-debug"   - x64 Debug
  "x64-release" - x64 Release
  "x86-debug"   - x86 Debug
  "x86-release" - x86 Release

我得到的结果如下:x1c 0d1x“/--list-presets”文件夹确实不存在,也不应该存在。
我尝试手动指定源目录,如question/issue所示,将命令更改为:

cmake -S . --list-presets

但结果是一样的。

6ovsh4lw

6ovsh4lw1#

我在一个gitlab runner for CI/CD中运行了这个命令。

apt-get install cmake

这安装了cmake 3. 18. 4,它不支持预置我用于开发Visual Studio运行3. 24,它支持预置,因此使用预置
我通过运行以下脚本which I got here修复了此问题

- apt-get update
    - apt-get install gpg wget
    - wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
    - echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null
    - apt-get update

之后,您可以通过运行以下命令获取最新的cmake:

apt-get install cmake

相关问题