Bagaimana saya bisa menginstal protoc di Ubuntu 16.04?

30

Bagaimana saya menginstal protocuf, kompiler protobuf untuk menghasilkan Java, di Ubuntu 16.04?

Martin Thoma
sumber

Jawaban:

48

Lihat https://github.com/protocolbuffers/protobuf/blob/master/src/README.md :

Prasyarat

$ sudo apt-get install autoconf automake libtool curl make g++ unzip

Instalasi

  1. Dari halaman ini , unduh protobuf-all-[VERSION].tar.gz.
  2. Ekstrak konten dan ubah di direktori
  3. ./configure
  4. make
  5. make check
  6. sudo make install
  7. sudo ldconfig # refresh shared library cache.

Periksa apakah itu berfungsi

$ protoc --version
libprotoc 3.6.1
Martin Thoma
sumber
Langkah yang sama juga berfungsi dengan baik untuk Ubuntu Trusty.
Binita Bharati
5
Juga berfungsi di Ubuntu 18,04
Binita Bharati
langkah 4: make -jX Di mana X adalah jumlah core yang Anda miliki, untuk berjalan secara paralel
Omar S.
sempurna untuk Debian 10
Corrado
19
sudo apt install protobuf-compiler
John Kugelman mendukung Monica
sumber
Ini menghasilkan "Menyiapkan protobuf-compiler (2.6.1-1.3)" - mungkin bukan versi yang diinginkan semua orang
y.selivonchyk
3

Jika Anda adalah pengguna non-C ++ dan / atau tidak ingin mengkompilasi sendiri, cara paling sederhana untuk menginstal versi protoc saat ini adalah dengan mengunduh biner pra-bangun dari halaman rilis.

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

Untuk menginstal, cukup letakkan biner ini di suatu tempat di PATH Anda (mis. / Usr / local / bin).

(Jika Anda berniat untuk menggunakan jenis-jenis terkenal yang disertakan maka jangan lupa untuk menyalin isi direktori 'sertakan' di suatu tempat juga, misalnya ke / usr / local / include /.)

Matt Ke
sumber
0

Anda dapat mengunduh biner dari kode sumber dan menggunakan perintah selanjutnya

sudo rm -rf ./protoc
unzip protoc-3.10.1-linux-x86_64.zip -d protoc
chmod 755 -R protoc
BASE=/usr/local
sudo rm -rf $BASE/include/google/protobuf/
sudo cp protoc/bin/protoc $BASE/bin 
sudo cp -R protoc/include/* $BASE/include 

Ubah basis Anda ke / usr /, atau / usr / loca /, atau apa pun di PATH Anda.

y.selivonchyk
sumber