Install Protocol Buffers on Windows Install Protocol Buffers on Windows windows windows

Install Protocol Buffers on Windows


If you just want to compile ProtoBuf definitions, you can download precompiled binaries of protoc for all platforms right on the ProtoBuf GitHub releases page.

They had precompiled binaries at least since 2015, but it's easy to overlook them in between the many downloads.


There is a whole documentation file for compiling protobuf on Windows :

You'll need 7-zip, Cmake and Visual Studio.

Anyway, one of the unexpected side-effects of using a Continuous Integration tool (like Travis or Appveyor) is that there is always a up-to-date and working build script available. I happen to always look at appveyor.yml and travis_config.yml files whenever they exists.

>>> git clone -b v3.1.0 https://github.com/google/protobuf.git >>> cd protobuf>>> curl -L -o release-1.7.0.zip https://github.com/google/googlemock/archive/release-1.7.0.zip>>> 7z x release-1.7.0.zip>>> del /Q release-1.7.0.zip>>> rename googlemock-release-1.7.0 gmock>>> curl -L -o release-1.7.0.zip "https://github.com/google/googletest/archive/release-1.7.0.zip">>> 7z x release-1.7.0.zip>>> del /Q release-1.7.0.zip>>> rename googletest-release-1.7.0 gtest>>> move gtest gmock>>> set generator=Visual Studio 12 Win64>>> set vcplatform=x64>>> mkdir build_msvc>>> cd build_msvc>>> cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% -Dprotobuf_UNICODE=%UNICODE% ../cmake>>> msbuild protobuf.sln /p:Platform=%vcplatform% || goto error

You'll need curl (Git Bash has it) as well as resolving paths for the 7z.exe and Msbuild.exe executables.

I successfully managed to build the protobuf compiler on a Windows 10 x64 machine with Visual Studio 2015.


For installing proto buff in windows

Go to https://github.com/protocolbuffers/protobuf/releases

Scroll down and download the zip for windows compatible

Binary File

Once download the zip, extract it to C:/

Just copy the path, C:\protoc-3.17.3-win64\bin and set this as path to the environment variables

path setup

Hope, this helps!