^ Linux From Scratch - Version 12.1-systemd ^^^
^ Chapter 8. Installing Basic System Software ^^^
|[[.:124-Setuptools-69.1.0|이전]] | [[.:08-installing_basic_system_software|위로]] / [[.:12.1|처음으로]] | [[.:126-Meson-1.3.2|다음]]|
|Setuptools-69.1.0 | Meson-1.3.2|
----
===== 8.55. Ninja-1.11.1 =====
Ninja는 속도에 중점을 둔 소형 빌드 시스템입니다.
* **빌드 시간:** 0.3 SBU
* **디스크 용량:** 75 MB
----
==== 8.55.1 Ninja 설치 ====
**ninja**는 실행 시 일반적으로 가능한 한 많은 수의 프로세스를 병렬로 사용합니다. 기본적으로 이 수는 시스템의 코어 수에 2개를 더한 수입니다. 이로 인해 CPU가 과열되거나 시스템의 메모리가 부족해질 수 있습니다. 명령줄에서 **ninja**를 호출할 때 -jN 매개변수를 전달하면 병렬 프로세스 수가 제한됩니다. 일부 패키지는 **ninja** 실행을 포함하고 있어 -j 매개변수를 전달하지 않습니다.
아래의 선택적 절차를 진행하면 환경 변수인 ''NINJAJOBS''를 통해 병렬 프로세스 수를 제한할 수 있습니다. **예를 들어** 아래의 설정은 **ninja**의 병렬 프로세스를 4개로 제한합니다.
export NINJAJOBS=4
원하는 경우 다음과 같이 Steam EDitor를 실행해서 **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
Ninja를 빌드합니다.
python3 configure.py --bootstrap
=== 옵션 설명 ===
* //--bootstrap// \\ 현재 시스템에 적합하도록 Ninja가 스스로를 다시 빌드하도록 합니다.
결과를 테스트 하려면
./ninja ninja_test
./ninja_test --gtest_filter=-SubprocessTest.SetWithLots
패키지를 설치합니다.
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.55.2 패키지 구성 ====
* **설치된 프로그램:** ninja
=== 간략한 설명===
* **ninja** \\ Ninja 빌드 시스템