运行 通过 WSL Remote 的 Cmake

Running Cmake via WSL Remote

我主要在 windows 上使用 cmake。 我想在 linux 上测试编译,为此我想使用 WSL。

我正确地(我认为)为远程设置了 CMake 工具扩展:WSL,cmake 也安装在 wsl 上。

WSL (Remote: WSL) 的 cmake 扩展的 settings.json 如下所示:

"cmake.configureArgs": [
    "-DVCPKG_TARGET_TRIPLET=x64-linux",
    "-DCMAKE_TOOLCHAIN_FILE=/home/raildex/downloads/vcpkg/scripts/buildsystems/vcpkg.cmake"
],
"cmake.cmakePath": "/home/raildex/downloads/cmake/bin/cmake"

Windows (Workspace) 的 cmake 扩展的 settings.json 如下所示:

"cmake.configureArgs": [
  "-DCMAKE_TOOLCHAIN_FILE=D:\Dokumente\Repositories\vcpkg\scripts\buildsystems\vcpkg.cmake",
  "-DVCPKG_TARGET_TRIPLET=x86-windows"
]

当我在 WSL 远程连接中使用命令 CMake: Configure 时,它会在我的 Windows 目录中查找工具链文件:

[proc] Executing command: /home/raildex/downloads/cmake/bin/cmake --no-warn-unused-cli -DCMAKE_TOOLCHAIN_FILE=D:\Dokumente\Repositories\vcpkg\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x86-windows -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/gcc -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/g++ -S/mnt/d/Dokumente/Repositories/Project -B/mnt/d/Dokumente/Repositories/Project/build -G Ninja

它从 WSL 运行 cmake,但配置是针对 Windows?

我错过了什么?

问题是工作区的设置覆盖了远程连接的设置。

覆盖的顺序是用户 < 远程 < 工作区

我的(临时)解决方案是在用户设置中为 Windows 设置 cmake 选项,并将工作区设置留空。