8.52. Ninja-1.11.1

Ninja er et lite byggesystem med fokus på hastighet.

Omtrentlig byggetid: 0.3 SBU
Nødvendig diskplass: 77 MB
[Tip]

Tip

Denne delen er strengt tatt ikke nødvendig for LFS hvis det ikke brukes systemd. På den annen side, ninja knyttet til meson gir et kraftig byggesystemkombinasjon, som forventes å bli brukt stadig oftere. Det kreves for flere pakker i BLFS boken.

8.52.1. Installasjon av Ninja

Når den kjøres, kjører ninja normalt et maksimalt antall prosesser parallelt. Som standard er dette antall kjerner på systemet pluss to. I noen tilfeller kan dette overopphete en CPU eller bruke opp systemets minne. Når ninja påkalles fra kommandolinjen, å sende parameteren -jN vil begrense antall parallelle prosesser. Noen pakker legger inn utførelsen av ninja, og gir ikke parameteren -j videre til den.

Ved å bruke den valgfrie prosedyren nedenfor lar en bruker begrense antall parallelle prosesser via en miljøvariabel, NINJAJOBS. For eksempe, å sette:

export NINJAJOBS=4

vil begrense ninja til fire parallelle prosesser.

Om ønskelig, la ninja gjenkjenne miljøvariabelen NINJAJOBS ved å kjøre strømredigeringsprogrammet:

sed -i '/int Guess/a \
  int   j = 0;\
  char* jobs = getenv( "NINJAJOBS" );\
  if ( jobs != NULL ) j = atoi( jobs );\
  if ( j > 0 ) return j;\
' src/ninja.cc

Bygg Ninja med:

python3 configure.py --bootstrap

Betydningen av byggealternativet:

--bootstrap

Denne parameteren tvinger ninja til å gjenoppbygge seg selv for gjeldene system.

For å teste resultatene, utsted:

./ninja ninja_test
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots

Installer pakken:

install -vm755 ninja /usr/bin/
install -vDm644 misc/bash-completion /usr/share/bash-completion/completions/ninja
install -vDm644 misc/zsh-completion  /usr/share/zsh/site-functions/_ninja

8.52.2. Innhold av Ninja

Installerte programmer: ninja

Korte beskrivelser

ninja

er Ninja byggesystemet