Wie kann ich Protoc auf Ubuntu 16.04 installieren?

30

Wie kann ich protoc, den Protobuf-Compiler zum Generieren von Java, auf Ubuntu 16.04 installieren?

Martin Thoma
quelle

Antworten:

48

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

Voraussetzungen

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

Installation

  1. Laden Sie von dieser Seite die protobuf-all-[VERSION].tar.gz.
  2. Extrahieren Sie den Inhalt und ändern Sie das Verzeichnis
  3. ./configure
  4. make
  5. make check
  6. sudo make install
  7. sudo ldconfig # refresh shared library cache.

Überprüfen Sie, ob es funktioniert

$ protoc --version
libprotoc 3.6.1
Martin Thoma
quelle
Die gleichen Schritte funktionieren auch für Ubuntu Trusty.
Binita Bharati
5
Funktioniert auch auf Ubuntu 18.04
Binita Bharati
Schritt 4: make -jX Wobei X die Anzahl der Kerne ist, die Sie parallel ausführen müssen
Omar S.
perfekt für Debian 10
Corrado
19
sudo apt install protobuf-compiler
John Kugelman unterstützt Monica
quelle
Es führt zu "Einrichten von Protobuf-Compiler (2.6.1-1.3)" - möglicherweise nicht die Version, die jeder will
y.selivonchyk
3

Wenn Sie kein C ++ - Benutzer sind und / oder es nicht selbst kompilieren möchten, können Sie die aktuelle Version von protoc am einfachsten installieren, indem Sie eine vorgefertigte Binärdatei von der Release-Seite herunterladen.

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

Zum Installieren platzieren Sie diese Binärdatei einfach irgendwo in Ihrem PATH (z. B. / usr / local / bin).

(Wenn Sie die enthaltenen bekannten Typen verwenden möchten, vergessen Sie nicht, den Inhalt des Verzeichnisses 'include' auch irgendwo zu kopieren, z. B. in / usr / local / include /.)

Matt Ke
quelle
0

Sie können Binärdateien aus dem Quellcode herunterladen und die nächsten Befehle verwenden

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 

Ändern Sie Ihre Basis in / usr / oder / usr / loca / oder irgendetwas anderes in Ihrem PATH.

y.selivonchyk
quelle