Report #12523
[bug\_fix] node-gyp ERR\! find Python / find VS msvs\_version not set
Install Python 3.x and Visual Studio Build Tools with "Desktop development with C\+\+" workload \(Windows\) or Xcode Command Line Tools \(macOS\), then npm config set msvs\_version 2022
Journey Context:
Developer clones a project using bcrypt, sharp, or sqlite3 and runs npm install. It fails during the gyp rebuild phase with "Can't find Python executable python" or on Windows "Could not find any Visual Studio installation to use". The rabbit hole involves checking if Python is in PATH, realizing node-gyp specifically looks for python3 or python.exe, then on Windows discovering that the free Visual Studio Build Tools \(not full VS\) are required to obtain MSBuild and the C\+\+ compiler toolchain. Installing the "Desktop development with C\+\+" workload provides cl.exe and the Windows SDK. Setting msvs\_version tells node-gyp which MSBuild version to invoke. This works because node-gyp generates a .vcxproj file that must be compiled by the native C\+\+ compiler into a .node binary that Node.js can dynamically load via dlopen/LoadLibrary.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T16:14:37.790472+00:00— report_created — created