6.52.1. ການຕິດຕັ້ງ Ninja
ເມື່ອແລ່ນ, ninja ປົກກະຕິແລ່ນຈໍານວນສູງສຸດຂອງຂະບວນການຂະຫນານ. ໂດຍຄ່າເລີ່ມຕົ້ນນີ້ແມ່ນຈໍານວນຂອງແກນໃນລະບົບບວກກັບສອງ. ໃນບາງກໍລະນີນີ້ສາມາດເຮັດໃຫ້ CPU overheat ຫຼືເຮັດໃຫ້ລະບົບອອກຈາກຫນ່ວຍຄວາມຈໍາ. ຖ້າແລ່ນຈາກເສັ້ນຄໍາສັ່ງ, ການຖ່າຍທອດພາລາມິເຕີ -jN ຈະຈໍາກັດຈໍານວນຂອງຂະບວນການຂະຫນານ, ແຕ່ບາງແພັກເກັດຝັງການປະຕິບັດຂອງ ninja ແລະບໍ່ຜ່ານພາລາມິເຕີ -j.
ການນໍາໃຊ້ ທາງເລືອກ ຂັ້ນຕອນຂ້າງລຸ່ມນີ້ອະນຸຍາດໃຫ້ຜູ້ໃຊ້ຈໍາກັດຈໍານວນຂອງຂະບວນການຂະຫນານໂດຍຜ່ານຕົວແປສະພາບແວດລ້ອມ, NINJAJOBS. ຍົກຕົວຢ່າງ, ການຕັ້ງຄ່າ:
ສົ່ງອອກ NINJAJOBS=4
ສົ່ງອອກ NINJAJOBS=4
ຈະຈໍາກັດ ninja ເປັນສີ່ຂະບວນການຂະຫນານ.
ຖ້າຕ້ອງການ, ເພີ່ມຄວາມສາມາດໃນການໃຊ້ຕົວແປສະພາບແວດລ້ອມ NINJAJOBS ໂດຍການແລ່ນ:
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
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
ສ້າງ Ninja ກັບ:
python3 configure.py --bootstrap
python3 configure.py --bootstrap
ຄວາມຫມາຍຂອງທາງເລືອກການກໍ່ສ້າງ:
--bootstrap
ພາລາມິເຕີນີ້ບັງຄັບ ninja ກໍ່ສ້າງຕົວມັນເອງສໍາລັບລະບົບປະຈຸບັນ.
ເພື່ອທົດສອບຜົນໄດ້ຮັບ, ບັນຫາ:
./ninja ninja_test
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots
./ninja ninja_test
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots
ຕິດຕັ້ງຊຸດ:
ຕິດຕັ້ງ -vm755 ninja /usr/bin/
ຕິດຕັ້ງ -vDm644 misc/bash-completion /usr/share/bash-completion/completions/ninja ຕິດຕັ້ງ -vDm644 misc/zsh-completion /usr/share/zsh/site-functions/_ninja