You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
cmakeExecutable is respected for the first preset that VS Code is opened with, however when I switch presets and configure/build, the CMake executable from the previous preset is still being used.
My use case is cross compiling for x86_64 on Apple silicon. I have native presets, where "cmakeExecutable": "/opt/homebrew/bin/cmake". I also have cross-compiling presets where "cmakeExecutable": "/usr/local/Cellar/cmake/3.24.2/bin/cmake". When I switch between them my CMake executable is not changed.
// Configure with a cross preset
[main] Configuring folder: <redacted>
[main] Saving open files before configure/build
[driver] Start configure
[driver] Running pre-configure checks and steps
[cmakefileapi-driver] Configuring using preset
[cmakefileapi-driver] Invoking CMake /usr/local/Cellar/cmake/3.24.2/bin/cmake with arguments
^ x86_64 cmake is being used, as requested
// ...
[extension] [2131] cmake.configure finished (returned 0)
// Select a native preset...
[extension] [2100] cmake.selectConfigurePreset started
[presetController] Start selection of configure presets. Found 60 presets.
[presetController] Opening configure preset selection QuickPick
[presetController] User selected configure preset "local-macos-dev-arm64-master"
[main] Resolving the selected configure preset
[main] Loading new configure preset into CMake driver
[driver] Switching to configure preset: local-macos-dev-arm64-master
[driver] CMakeDriver configure preset set to local-macos-dev-arm64-master
[main] Resolving the selected build preset
[extension] Not updating the configuration provider because "C_Cpp.intelliSenseEngine" is set to "Disabled"
[main] Loading new build preset into CMake driver
[driver] Switching to build preset: __defaultBuildPreset__
[driver] CMakeDriver build preset set to __defaultBuildPreset__
[main] Resolving the selected test preset
[main] Resolving the selected test preset
[main] Loading new test preset into CMake driver
[driver] Switching to test preset: <redacted>
[driver] CMakeDriver test preset set to <redacted>
[extension] [2100] cmake.selectConfigurePreset finished (returned true)
// Then configure with the native preset...
[main] Configuring folder: <redacted>
[main] Saving open files before configure/build
[driver] Start configure
[driver] Running pre-configure checks and steps
[cmakefileapi-driver] Configuring using preset
[cmakefileapi-driver] Invoking CMake /usr/local/Cellar/cmake/3.24.2/bin/cmake with arguments
^ x86_64 cmake is still being used
Additional Information
No response
The text was updated successfully, but these errors were encountered:
I confirm the problem.
Very annoying when working with different platforms. My case: often need to change the configuration between the desktop assembly and (for example) emsdk.
Each platform has its own cmake executable tool (specified within CMakePresets.json) but it doesn't applied until VSCode's windows is reloaded.
Brief Issue Summary
cmakeExecutable
is respected for the first preset that VS Code is opened with, however when I switch presets and configure/build, the CMake executable from the previous preset is still being used.My use case is cross compiling for x86_64 on Apple silicon. I have native presets, where
"cmakeExecutable": "/opt/homebrew/bin/cmake"
. I also have cross-compiling presets where"cmakeExecutable": "/usr/local/Cellar/cmake/3.24.2/bin/cmake"
. When I switch between them my CMake executable is not changed.CMake Tools Diagnostics
Debug Log
Additional Information
No response
The text was updated successfully, but these errors were encountered: