Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EXTERNAL_INCLUDE env variable is not imported from VS dev environment #4217

Open
equeim opened this issue Dec 23, 2024 · 3 comments
Open

EXTERNAL_INCLUDE env variable is not imported from VS dev environment #4217

equeim opened this issue Dec 23, 2024 · 3 comments
Labels
bug a bug in the product

Comments

@equeim
Copy link

equeim commented Dec 23, 2024

Brief Issue Summary

Running C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1 script in PowerShell sets, among others, a EXTERNAL_INCLUDE environment variable with this (example) value:

C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\um;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\shared;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\winrt;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\cppwinrt

This env variable is (I assume) used by MSVC as an alternative to /external:I option (https://learn.microsoft.com/en-us/cpp/build/reference/external-external-headers-diagnostics).

However this extension does not import it, which results in unnecessary compilation warnings from external headers that should be hidden by default (#4215).

CMake Tools Diagnostics

{
  "os": "win32",
  "vscodeVersion": "1.96.2",
  "cmtVersion": "1.19.52",
  "configurations": [
    {
      "folder": "f:\\projects\\tremotesf2",
      "cmakeVersion": "3.31.2",
      "configured": false,
      "generator": "Ninja Multi-Config",
      "usesPresets": true,
      "compilers": {
        "CXX": "C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.42.34433/bin/Hostx64/x64/cl.exe"
      }
    }
  ],
  "cpptoolsIntegration": {
    "isReady": false,
    "hasCodeModel": false,
    "activeBuildType": "",
    "buildTypesSeen": [],
    "requests": [],
    "responses": [],
    "partialMatches": [],
    "targetCount": 0,
    "executablesCount": 0,
    "librariesCount": 0,
    "targets": []
  },
  "settings": [
    {
      "communicationMode": "automatic",
      "useCMakePresets": "auto",
      "configureOnOpen": true
    }
  ]
}

Debug Log

[presetController] Reading presets file F:\projects\tremotesf2\CMakePresets.json
[presetController] Reading and validating the presets "file F:\projects\tremotesf2\CMakePresets.json"
[presetController] Successfully validated F:\projects\tremotesf2\CMakePresets.json against presets schema
[presetController] Expanding presets file F:\projects\tremotesf2\CMakePresets.json
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[presetController] Successfully expanded presets file F:\projects\tremotesf2\CMakePresets.json
[main] Resolving the selected configure preset
[proc] The command: C:\Windows\System32\where.exe cl exited with code: 1
[preset] Configure preset windows-x86_64-msvc-vcpkg: No toolset architecture specified for cl.exe, using "host=x64" by default
[preset] Using developer environment from Visual Studio (instance 790ed36b, version 17.12.35527.113, installed at "C:\Program Files\Microsoft Visual Studio\2022\Community")
[visual-studio] OK running C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat x64 , env vars: {"DevEnvDir":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\","Framework40Version":"v4.0","FrameworkDir":"C:\\Windows\\Microsoft.NET\\Framework64\\","FrameworkDIR64":"C:\\Windows\\Microsoft.NET\\Framework64\\","FrameworkVersion":"v4.0.30319","FrameworkVersion64":"v4.0.30319","INCLUDE":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\include;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\ATLMFC\\include;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Auxiliary\\VS\\include;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.26100.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\10\\\\include\\10.0.26100.0\\\\um;C:\\Program Files (x86)\\Windows Kits\\10\\\\include\\10.0.26100.0\\\\shared;C:\\Program Files (x86)\\Windows Kits\\10\\\\include\\10.0.26100.0\\\\winrt;C:\\Program Files (x86)\\Windows Kits\\10\\\\include\\10.0.26100.0\\\\cppwinrt","LIB":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\ATLMFC\\lib\\x64;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\lib\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.26100.0\\ucrt\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\\\lib\\10.0.26100.0\\\\um\\x64","LIBPATH":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\ATLMFC\\lib\\x64;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\lib\\x64;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\lib\\x86\\store\\references;C:\\Program Files (x86)\\Windows Kits\\10\\UnionMetadata\\10.0.26100.0;C:\\Program Files (x86)\\Windows Kits\\10\\References\\10.0.26100.0;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319","Path":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\bin\\HostX64\\x64;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\VC\\VCPackages;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\TestWindow;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\TeamFoundation\\Team Explorer;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\MSBuild\\Current\\bin\\Roslyn;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Team Tools\\DiagnosticsHub\\Collector;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\10.0.26100.0\\\\x64;C:\\Program Files (x86)\\Windows Kits\\10\\bin\\\\x64;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\\\MSBuild\\Current\\Bin\\amd64;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\Tools\\;C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Windows\\system32;C:\\Windows;C:\\Windows\\System32\\Wbem;C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Windows\\System32\\OpenSSH\\;C:\\Program Files (x86)\\Windows Kits\\10\\Windows Performance Toolkit\\;C:\\Program Files\\LLVM\\bin;C:\\Program Files\\WiX Toolset v5.0\\bin\\;C:\\Program Files\\Git\\cmd;C:\\Program Files\\CMake\\bin;C:\\Program Files\\dotnet\\;C:\\Users\\Alexey\\.cargo\\bin;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WindowsApps;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WinGet\\Packages\\Ninja-build.Ninja_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\\Users\\Alexey\\AppData\\Local\\Programs\\VSCodium\\bin;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WinGet\\Packages\\zyedidia.micro_Microsoft.Winget.Source_8wekyb3d8bbwe\\micro-2.0.14;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WinGet\\Packages\\sharkdp.fd_Microsoft.Winget.Source_8wekyb3d8bbwe\\fd-v10.2.0-x86_64-pc-windows-msvc;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WinGet\\Packages\\BurntSushi.ripgrep.MSVC_Microsoft.Winget.Source_8wekyb3d8bbwe\\ripgrep-14.1.1-x86_64-pc-windows-msvc;C:\\Users\\Alexey\\AppData\\Local\\Microsoft\\WinGet\\Links;C:\\Users\\Alexey\\AppData\\Local\\bin\\NASM;F:\\projects\\jom;;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\CMake\\bin;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\CommonExtensions\\Microsoft\\CMake\\Ninja;C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\VC\\Linux\\bin\\ConnectionManagerExe","UCRTVersion":"10.0.26100.0","UniversalCRTSdkDir":"C:\\Program Files (x86)\\Windows Kits\\10\\","VCIDEInstallDir":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\Common7\\IDE\\VC\\","VCINSTALLDIR":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\","VCToolsInstallDir":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Tools\\MSVC\\14.42.34433\\","VCToolsRedistDir":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC\\Redist\\MSVC\\14.42.34433\\","VCToolsVersion":"14.42.34433","VisualStudioVersion":"17.0","VSINSTALLDIR":"C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\","WindowsLibPath":"C:\\Program Files (x86)\\Windows Kits\\10\\UnionMetadata\\10.0.26100.0;C:\\Program Files (x86)\\Windows Kits\\10\\References\\10.0.26100.0","WindowsSdkBinPath":"C:\\Program Files (x86)\\Windows Kits\\10\\bin\\","WindowsSdkDir":"C:\\Program Files (x86)\\Windows Kits\\10\\","WindowsSDKLibVersion":"10.0.26100.0\\","WindowsSDKVersion":"10.0.26100.0\\","TMP":"C:\\Users\\Alexey\\AppData\\Local\\Temp"}
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[main] Loading new configure preset into CMake driver
[driver] Switching to configure preset: windows-x86_64-msvc-vcpkg
[driver] CMakeDriver configure preset set to windows-x86_64-msvc-vcpkg
[main] Resolving the selected build preset
[main] Loading new build preset into CMake driver
[driver] Switching to build preset: windows-x86_64-msvc-vcpkg-debug
[driver] CMakeDriver build preset set to windows-x86_64-msvc-vcpkg-debug
[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: windows-x86_64-msvc-vcpkg-debug
[driver] CMakeDriver test preset set to windows-x86_64-msvc-vcpkg-debug
[main] Resolving the selected package preset
[main] Resolving the selected package preset
[main] Loading new package preset into CMake driver
[driver] Switching to package preset: __defaultPackagePreset__
[driver] CMakeDriver package preset set to __defaultPackagePreset__
[main] Resolving the selected workflow preset
[main] Resolving the selected workflow preset
[expand] expanded ${sourceDir}/out/build/${presetName}
[expand] expanded ${sourceDir}/out/install/${presetName}
[expand] expanded $env{VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake
[expand] expanded ${sourceDir}/vcpkg-installed
[expand] expanded ${sourceDir}/vcpkg-overlay-triplets
[expand] expanded ${hostSystemName}
[main] Loading new workflow preset into CMake driver
[driver] Switching to workflow preset: __defaultWorkflowPreset__
[driver] CMakeDriver workflow preset set to __defaultWorkflowPreset__
[extension] [8704] cmake.logDiagnostics started
[extension] [8704] cmake.logDiagnostics finished (returned undefined)

Additional Information

Here is what C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1 sets for me:

CommandPromptType=Native
DevEnvDir=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\
EXTERNAL_INCLUDE=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt
ExtensionSdkDir=C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs
Framework40Version=v4.0
FrameworkDir64=C:\Windows\Microsoft.NET\Framework64\
FrameworkDir=C:\Windows\Microsoft.NET\Framework64\
FrameworkVersion64=v4.0.30319
FrameworkVersion=v4.0.30319
INCLUDE=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt
LIB=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\lib\x64;C:\Program Files (x86)\Windows Kits\10\lib\10.0.26100.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\\lib\10.0.26100.0\\um\x64
LIBPATH=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\lib\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\lib\x86\store\references;C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.26100.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.26100.0;C:\Windows\Microsoft.NET\Framework64\v4.0.30319
Path=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\bin\HostX64\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\VC\VCPackages;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TestWindow;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer;C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Current\bin\Roslyn;C:\Program Files\Microsoft Visual Studio\2022\Community\Team Tools\DiagnosticsHub\Collector;C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\\x64;C:\Program Files (x86)\Windows Kits\10\bin\\x64;C:\Program Files\Microsoft Visual Studio\2022\Community\\MSBuild\Current\Bin\amd64;C:\Windows\Microsoft.NET\Framework64\v4.0.30319;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\;C:\Program Files\WindowsApps\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\LLVM\bin;C:\Program Files\WiX Toolset v5.0\bin\;C:\Program Files\Git\cmd;C:\Program Files\CMake\bin;C:\Program Files\dotnet\;C:\Users\Alexey\.cargo\bin;C:\Users\Alexey\AppData\Local\Microsoft\WindowsApps;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\Ninja-build.Ninja_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\Users\Alexey\AppData\Local\Programs\VSCodium\bin;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\zyedidia.micro_Microsoft.Winget.Source_8wekyb3d8bbwe\micro-2.0.14;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\sharkdp.fd_Microsoft.Winget.Source_8wekyb3d8bbwe\fd-v10.2.0-x86_64-pc-windows-msvc;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\BurntSushi.ripgrep.MSVC_Microsoft.Winget.Source_8wekyb3d8bbwe\ripgrep-14.1.1-x86_64-pc-windows-msvc;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Links;C:\Users\Alexey\AppData\Local\bin\NASM;F:\projects\jom;;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\CMake\bin;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\CommonExtensions\Microsoft\CMake\Ninja;C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\VC\Linux\bin\ConnectionManagerExe
UCRTVersion=10.0.26100.0
UniversalCRTSdkDir=C:\Program Files (x86)\Windows Kits\10\
VCIDEInstallDir=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\VC\
VCINSTALLDIR=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\
VCToolsInstallDir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\
VCToolsRedistDir=C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Redist\MSVC\14.42.34433\
VCToolsVersion=14.42.34433
VS170COMNTOOLS=C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\
VSCMD_ARG_HOST_ARCH=x64
VSCMD_ARG_TGT_ARCH=x64
VSCMD_ARG_app_plat=Desktop
VSCMD_VER=17.12.3
VSINSTALLDIR=C:\Program Files\Microsoft Visual Studio\2022\Community\
VisualStudioVersion=17.0
WindowsLibPath=C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.26100.0;C:\Program Files (x86)\Windows Kits\10\References\10.0.26100.0
WindowsSDKLibVersion=10.0.26100.0\
WindowsSDKVersion=10.0.26100.0\
WindowsSdkBinPath=C:\Program Files (x86)\Windows Kits\10\bin\
WindowsSdkDir=C:\Program Files (x86)\Windows Kits\10\
WindowsSdkVerBinPath=C:\Program Files (x86)\Windows Kits\10\bin\10.0.26100.0\
__DOTNET_ADD_64BIT=1
__DOTNET_PREFERRED_BITNESS=64
__VSCMD_PREINIT_PATH=C:\Program Files\WindowsApps\Microsoft.PowerShell_7.4.6.0_x64__8wekyb3d8bbwe;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\;C:\Program Files\LLVM\bin;C:\Program Files\WiX Toolset v5.0\bin\;C:\Program Files\Git\cmd;C:\Program Files\CMake\bin;C:\Program Files\dotnet\;C:\Users\Alexey\.cargo\bin;C:\Users\Alexey\AppData\Local\Microsoft\WindowsApps;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\Ninja-build.Ninja_Microsoft.Winget.Source_8wekyb3d8bbwe;C:\Users\Alexey\AppData\Local\Programs\VSCodium\bin;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\zyedidia.micro_Microsoft.Winget.Source_8wekyb3d8bbwe\micro-2.0.14;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\sharkdp.fd_Microsoft.Winget.Source_8wekyb3d8bbwe\fd-v10.2.0-x86_64-pc-windows-msvc;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Packages\BurntSushi.ripgrep.MSVC_Microsoft.Winget.Source_8wekyb3d8bbwe\ripgrep-14.1.1-x86_64-pc-windows-msvc;C:\Users\Alexey\AppData\Local\Microsoft\WinGet\Links;C:\Users\Alexey\AppData\Local\bin\NASM;F:\projects\jom;

@Yingzi1234
Copy link
Collaborator

@equeim Thanks for your github question! In order to better reproduce your problem and fix it, could you give us a detailed reproduction step-by-step and some additional information?

@Yingzi1234 Yingzi1234 added more info needed More info is needed from the community for us to properly triage and investigate. and removed triage labels Dec 25, 2024
@equeim
Copy link
Author

equeim commented Jan 4, 2025

Sure.

  1. Download minimal example project: warnings-test.zip
  2. Open it in VSCode
  3. Build it

Expected result:
During CMake configuration it outputs something like:

EXTERNAL_INCLUDE environment variable is C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.42.34433\ATLMFC\include;C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\VS\include;C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\ucrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\um;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\shared;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\winrt;C:\Program Files (x86)\Windows Kits\10\\include\10.0.26100.0\\cppwinrt

During build there are no warnings.

Actual result:
During CMake configuration it outputs "EXTERNAL_INCLUDE environment variable is not set".
During build there are C4365 warnings:

[build] C:\Program Files (x86)\Windows Kits\10\include\10.0.26100.0\cppwinrt\winrt/base.h(174): warning C4365: 'return': conversion from 'int' to 'uint16_t', signed/unsigned mismatch

When building this project in command line inside VS developer environment the behaviour matches one in "Expected result".

@Yingzi1234
Copy link
Collaborator

@equeim Thank you for your help! We can reproduce this issue based the above information. We have been changed this issue to bug, please be patient with the results of our investigation and we will notify you of any updates as soon as they are available!

@gcampbell-msft We can reproduce the issue on latest CMake Tools version 1.20.32(pre-release) and change the Label to ‘Bug’ for now, if it is wrong could you please change it to the correct label, the reproduction steps are detailed below. Thanks!

Repro steps:

  1. Open power shell as Administrator and run the Launch-VsDevShell.ps1script
  2. Run the below code to check the EXTERNAL_INCLUDE environment variable should be set automatically with a value
    echo $Env:EXTERNAL_INCLUDE
  3. Download and extract the minimal example project: warnings-test.zip
  4. Click F1 to run command CMake: configure
  5. Build the project

Actual result:
Configure successfully, but build failed.
“EXTERNAL_INCLUDE environment variable can be successfully built if it is not set.
Image

build log.txt

@Yingzi1234 Yingzi1234 added bug a bug in the product and removed more info needed More info is needed from the community for us to properly triage and investigate. labels Jan 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug a bug in the product
Projects
Status: Blocked
Development

No branches or pull requests

2 participants