运行 通过 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 选项,并将工作区设置留空。
我主要在 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 选项,并将工作区设置留空。