Skip to content

Instantly share code, notes, and snippets.

@ryujaehun
Created August 19, 2018 08:24
Show Gist options
  • Star 24 You must be signed in to star a gist
  • Fork 12 You must be signed in to fork a gist
  • Save ryujaehun/991f5f1e8c1485dea72646877707f497 to your computer and use it in GitHub Desktop.
Save ryujaehun/991f5f1e8c1485dea72646877707f497 to your computer and use it in GitHub Desktop.
Install protobuf 3.6.1 on Ubuntu 16.04
#! /bin/bash
# Make sure you grab the latest version
curl -OL https://github.com/google/protobuf/releases/download/v3.6.1/protoc-3.6.1-linux-x86_64.zip
https://github.com/google/protobuf/releases/download/v3.6.1/protoc-3.6.1-linux-x86_64.zip
# Unzip
unzip protoc-3.6.1-linux-x86_64.zip -d protoc3
# Move protoc to /usr/local/bin/
sudo mv protoc3/bin/* /usr/local/bin/
# Move protoc3/include to /usr/local/include/
sudo mv protoc3/include/* /usr/local/include/
# Optional: change owner
sudo chown $USER /usr/local/bin/protoc
sudo chown -R $USER /usr/local/include/google
@martinthurn
Copy link

martinthurn commented Nov 7, 2018

Thank you for this!
Rather than mv, I prefer cp -pr
Also, one should also do sudo ldconfig at the end, to add the new libraries to the LD path

@arcanoix
Copy link

thanks for this.

@jhonnynetworker
Copy link

Thanks! right

@alsundma
Copy link

Thank! very helpful.

@KrishnaGolakoti
Copy link

I have followed the above steps to upgrade from older version of protoc to 3+. still I get protoc --version as "libprotoc 2.6.1".

@suraj2596
Copy link

suraj2596 commented Nov 29, 2019

Just consolidated the whole process by considering other comments

#! /bin/bash
# Make sure you grab the latest version
curl -OL https://github.com/google/protobuf/releases/download/v3.6.1/protoc-3.6.1-linux-x86_64.zip

# Unzip
unzip protoc-3.6.1-linux-x86_64.zip -d protoc3

# Move protoc to /usr/local/bin/
sudo cp -r protoc3/bin/* /usr/local/bin/

# Move protoc3/include to /usr/local/include/
sudo cp -r protoc3/include/* /usr/local/include/

# Optional: change owner
sudo chown $USER /usr/local/bin/protoc
sudo chown -R $USER /usr/local/include/google

sudo ldconfig

@etatbak
Copy link

etatbak commented Feb 14, 2020

Great thanks!

@chienkan
Copy link

chienkan commented Mar 3, 2020

I have followed the above steps to upgrade from older version of protoc to 3+. still I get protoc --version as "libprotoc 2.6.1".

I have the same problem, how did you solved this?

@chandiprasad
Copy link

Thanks !! That works like a charm !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment