Protobuf-29.3

Introduksjon til Protobuf

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

Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.3 plattform.

Pakkeinformasjon

Protobuf Avhengigheter

Påkrevd

Abseil-cpp-20250127.0 og CMake-3.31.5

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-20250127.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-29.3.0 og protoc (en symbolkobling til protoc-29.3.0)
Installerte Biblioteker: libprotobuf.so, libprotobuf-lite.so, libprotoc.so, libutf8_range.so, og libutf8_validity.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

libutf8_validity.so

inneholder funksjoner som lar et program bestemme om en sekvens av byte er en gyldig UTF-8 sekvens, og for å finne hva lengste gyldige prefikset for sekvensen er