Chcę zrobić jeden projekt w Javie przy użyciu netty i protobuf do komunikacji między klientem a serwerem. Proszę, prowadź mnie, jak mogę zainstalować protobuf na Ubuntu 12.04?
Zaczerpnięte z http://www.confusedcoders.com/random/how-to-install-protocol-buffer-2-5-0-on-ubuntu-13-04 :
Bufor protokołu to format serializacji opracowany przez Google. Jest sterowany przez interfejs i jest użyteczny w aplikacjach komunikujących się przewodowo. Poniżej znajdują się kroki instalacji bufora protokołu.
Pobierz bufor protokołu. Biblioteki buforów protokołu można pobrać tutaj. Pobierz bufor protokołu .
Sprawdź, czy kompilator g ++ jest zainstalowany na pudełku. Bufor protokołu wymaga kompilatora g ++, który będzie obecny na twoim urządzeniu, zanim będzie można go zbudować. To jest ostry post na temat instalacji kompilatora g ++ na twoim urządzeniu. Zainstaluj kompilator g ++ .
Wyodrębnij archiwum bufora protokołu i przejdź do wyodrębnionego katalogu.
W wyodrębnionym katalogu wciśnij poniższe polecenia, aby zainstalować bufor protokołu. Może to chwilę potrwać, prosimy o cierpliwość.
./configure make make check sudo make install protoc --version
Otóż to. Bufor protokołu w wersji 2.5.0 jest zainstalowany na twoim urządzeniu.
Uwaga: Czasami najnowsza wersja protokołu nie ładuje się. Możemy to zrobić ręcznie za pomocą tego polecenia
sudo ldconfig protoc --version
Wygląda na to, że 12.04 to jedna z pierwszych wersji zawierająca protobuf pod apt-get!
Po prostu uruchom:
sudo apt-get install libprotobuf-java protobuf-compiler
i powinieneś być gotowy do używania protobufów z Javą.
To powiedziawszy, 12.04 obsługuje tylko przejście do protobuf v2.4 w ten sposób. Więc jeśli potrzebujesz nowszych funkcji, musisz uzyskać je z github, jak opisano w drugiej odpowiedzi.
Jeśli chodzi o mnie, instaluję protpbuf 2.6.1 w Ubuntu12
https://github.com/google/protobuf/releases/download/v2.6.1/protobuf-2.6.1.tar.gz
tar -zxvf protobuf-2.6.1.tar.gz #unzip
sudo apt-get update
sudo apt-get install build-essential
cd protobuf-2.6.1/
./configure
make -j10
make check -j10
sudo make install -j10
protoc --version # if echo 'libprotoc 2.6.1', a następnie pomyślnie
Jeśli pokazuje błąd „protokół: błąd podczas ładowania bibliotek współdzielonych: libprotoc.so.9: nie można otworzyć pliku obiektu współdzielonego: brak takiego pliku lub katalogu”
sudo updatedb zlokalizuj libprotoc.so.9
/usr/local/lib/libprotoc.so.9 /usr/local/lib/libprotoc.so.9.0.1
Więc musimy to dodać LD_LIBRARY_PATH
vi ~ / .bashrc, a następnie dodaj
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
Następnie:
źródło ~ / .bashrc
protoc --wersja
dostaniesz libprotoc 2.6.1
Oto jak zainstalowałem protobuf, aby zbudować Eternal Terminal (całkiem niesamowity emulator terminala, który łączy się autossh
z, mosh
ale zapewnia natywne przewijanie ):
sudo apt install libprotobuf-dev protobuf-compiler