From 5c8a33f248ef0a93ad5c82408d7b21d5bf4a1837 Mon Sep 17 00:00:00 2001 From: Satyam Pratibhan <142714564+SATYAM-PRATIBHAN@users.noreply.github.com.> Date: Fri, 22 May 2026 18:54:22 +0530 Subject: [PATCH 1/3] Install protoc and libclang in Windows bootstrap --- script/windows/bootstrap.ps1 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/script/windows/bootstrap.ps1 b/script/windows/bootstrap.ps1 index 33f5a28c79..2b51cc1386 100644 --- a/script/windows/bootstrap.ps1 +++ b/script/windows/bootstrap.ps1 @@ -46,7 +46,7 @@ function Show-BootstrapPreview { Write-Output 'It will:' Write-Output ' - Check for Git for Windows.' Write-Output ' - Install Rust if cargo is unavailable.' - Write-Output ' - Install Visual Studio Build Tools, jq, CMake, InnoSetup, and gcloud as needed.' + Write-Output ' - Install Visual Studio Build Tools, jq, CMake, InnoSetup, protoc, LLVM, and gcloud as needed.' Write-Output ' - Install Cargo test dependencies.' if (-not $InstallCommonSkills) { @@ -157,6 +157,12 @@ winget install -e --id Kitware.CMake # We use InnoSetup to build our release bundle installer. winget install -e --id JRSoftware.InnoSetup +# protoc (Protocol Buffers compiler) is required by prost-build. +winget install protobuf + +# LLVM provides libclang, which is required by bindgen. +winget install -e --id LLVM.LLVM + # If we don't see gcloud command, try adding the install location to the PATH. if (-not (Get-Command -Name gcloud -Type Application -ErrorAction SilentlyContinue)) { $env:PATH += ";$env:LOCALAPPDATA\Google\Cloud SDK\google-cloud-sdk\bin" From a7f076fd3e5d33f289d164205dbe7b345ecb4594 Mon Sep 17 00:00:00 2001 From: Satyam Pratibhan <142714564+SATYAM-PRATIBHAN@users.noreply.github.com.> Date: Fri, 22 May 2026 19:23:57 +0530 Subject: [PATCH 2/3] fix: oz suggestion itr1 --- script/windows/bootstrap.ps1 | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/script/windows/bootstrap.ps1 b/script/windows/bootstrap.ps1 index 2b51cc1386..c77556b6dc 100644 --- a/script/windows/bootstrap.ps1 +++ b/script/windows/bootstrap.ps1 @@ -158,10 +158,16 @@ winget install -e --id Kitware.CMake winget install -e --id JRSoftware.InnoSetup # protoc (Protocol Buffers compiler) is required by prost-build. -winget install protobuf +winget install -e --id Google.Protobuf +if (-not (Get-Command -Name protoc -Type Application -ErrorAction SilentlyContinue)) { + $env:PATH += ";$env:ProgramFiles\protobuf\bin" +} # LLVM provides libclang, which is required by bindgen. winget install -e --id LLVM.LLVM +if (-not (Get-Command -Name clang -Type Application -ErrorAction SilentlyContinue)) { + $env:PATH += ";$env:ProgramFiles\LLVM\bin" +} # If we don't see gcloud command, try adding the install location to the PATH. if (-not (Get-Command -Name gcloud -Type Application -ErrorAction SilentlyContinue)) { From 9e128600c4e8d973313e3b9797d38d49c479a62e Mon Sep 17 00:00:00 2001 From: Satyam Pratibhan <142714564+SATYAM-PRATIBHAN@users.noreply.github.com.> Date: Fri, 22 May 2026 19:34:13 +0530 Subject: [PATCH 3/3] fix: oz suggestion itr2 --- script/windows/bootstrap.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/windows/bootstrap.ps1 b/script/windows/bootstrap.ps1 index c77556b6dc..927d6650ec 100644 --- a/script/windows/bootstrap.ps1 +++ b/script/windows/bootstrap.ps1 @@ -160,7 +160,7 @@ winget install -e --id JRSoftware.InnoSetup # protoc (Protocol Buffers compiler) is required by prost-build. winget install -e --id Google.Protobuf if (-not (Get-Command -Name protoc -Type Application -ErrorAction SilentlyContinue)) { - $env:PATH += ";$env:ProgramFiles\protobuf\bin" + $env:PATH += ";$env:LOCALAPPDATA\Microsoft\WinGet\Links" } # LLVM provides libclang, which is required by bindgen.