Protobuf-28.3

Introduksjon til Protobuf

Protobuf pakken inneholder verktøy og biblioteker for bruk av data i Googles datautvekslingsformat.

[Notat]

Notat

Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden den siste stabile versjonene av bøkene.

Pakkeinformasjon

Protobuf Avhengigheter

Påkrevd

Abseil-cpp-20240722.0 og CMake-3.31.0

Valgfri

gtest (for tester)

Installasjon av Protobuf

Installer Protobuf ved å kjøre følgende kommandoer:

mkdir build &&
cd    build &&

cmake -D CMAKE_INSTALL_PREFIX=/usr      \
      -D CMAKE_BUILD_TYPE=Release       \
      -D CMAKE_SKIP_INSTALL_RPATH=ON    \
      -D protobuf_BUILD_TESTS=OFF       \
      -D protobuf_ABSL_PROVIDER=package \
      -D protobuf_BUILD_LIBUPB=OFF      \
      -D protobuf_BUILD_SHARED_LIBS=ON  \
      -G Ninja ..                       &&
ninja

Denne pakken kommer med en testpakke, men den krever gtest, som ikke er en del av BLFS.

Nå, som root bruker:

ninja install

Parameterforklaringer

-D CMAKE_SKIP_INSTALL_RPATH=ON: Denne bryteren gjør at cmake fjerner hardkodede biblioteksøkebaner (rpath) når du installerer en binær kjørbar fil eller et delt bibliotek. Denne pakken trenger ikke rpath når den først er installert i standard plassering, og rpath kan noen ganger forårsake uønskede effekter eller til og med sikkerhetsproblemer.

-D protobuf_BUILD_TESTS=OFF: Denne parameteren forhindrer testene fra å bygges pga gtest ikke er en del av BLFS.

-D protobuf_ABSL_PROVIDER=package: Denne parameteren lar byggesystemet bruke den systeminstallerte kopien av Abseil-cpp-20240722.0.

-D protobuf_BUILD_SHARED_LIBS=ON: Denne parameteren gjør det mulig å bygge delte versjoner av bibliotekene som tilbys av denne pakken i stedet for statiske versjoner.

Innhold

Installerte Programmer: protoc-28.3.0 og protoc (en symbolkobling til protoc-28.3.0)
Installerte Biblioteker: libprotobuf.so, libprotobuf-lite.so, libprotoc.so, og libutf8_range.so
Installerte Mapper: /usr/include/google, /usr/include/java, /usr/include/upb_generator, /usr/lib/cmake/protobuf, og /usr/lib/cmake/utf8_range

Korte Beskrivelser

protoc

analyserer protokollbufferfiler og genererer utdata for flere programmeringsspråk og formater

libprotobuf.so

inneholder funksjoner for bruk av data i Googles datautveksling format

libprotobuf-lite.so

inneholder en enklere versjon av funksjonene for å utnytte data i Googles datautvekslingsformat

libprotoc.so

inneholder funksjoner som brukes av protoc under kjøretid for utdata for flere programmeringsspråk og formater

libutf8_range.so

inneholder funksjoner som lar et program bestemme om en sekvens av tegn er en gyldig UTF-8 sekvens