Bazel์ ํ์ํ ์ปดํ์ผ๋ฌ์ ํ ์คํธ๋ฅผ ์คํํ์ฌ ํ๋ก์ ํธ๋ฅผ ๋น๋ํฉ๋๋ค. ๋น๋ ์์คํ ์ ์ฌ๋ฌ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ๋ ์ฝ๋๋ฅผ ํฌํจํ๊ณ ๊ด๋ฒ์ํ ํ ์คํธ๊ฐ ํ์ํ๋ฉฐ ์ฌ๋ฌ ํ๋ซํผ์ฉ์ผ๋ก ๊ตฌ์ถ๋ ํ๋ก์ ํธ์ ์ด๋ํ ํ๋ก์ ํธ๋ฅผ ํฌํจํ์ฌ Google ํ๋ก์ ํธ๋ฅผ ์ต์ ์ผ๋ก ๋น๋ํ๋๋ก ์ฒ์๋ถํฐ ์ค๊ณ๋์์ต๋๋ค. Java, C++, Objective-C, Python, Rust, Go ๋ฐ ๊ธฐํ ์ฌ๋ฌ ์ธ์ด๋ก ์ฝ๋๋ฅผ ๋น๋ํ๊ณ ํ ์คํธํ๋ ๊ฒ์ ๋ฌผ๋ก Android ๋ฐ iOS์ฉ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น๋ํ๋ ๊ฒ๋ ์ง์ํฉ๋๋ค. ๋ค์ํ ํ๋ซํผ๊ณผ ์ํคํ ์ฒ์ ๋ํ ๋จ์ผ ์ด์ ๋ธ๋ฆฌ ํ์ผ์ ์ฌ์ฉ์ด ์ง์๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ๋ณ๊ฒฝ ์์ด ํ๋์ ์ด์ ๋ธ๋ฆฌ ํ์ผ์ ์๋ฒ ์์คํ ๊ณผ ๋ชจ๋ฐ์ผ ์ฅ์น ๋ชจ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Bazel์ ๋ ํนํ ํน์ง ์ค์๋ ์กฐ๋ฆฝ ๊ณต์ ์ ๋น ๋ฅธ ์๋, ์ ๋ขฐ์ฑ ๋ฐ ๋ฐ๋ณต์ฑ์ด ์์ต๋๋ค. ๋์ ๋น๋ ์๋๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด Bazel์ ๋น๋ ํ๋ก์ธ์ค์ ์บ์ฑ ๋ฐ ๋ณ๋ ฌํ ๊ธฐ์ ์ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํฉ๋๋ค. BUILD ํ์ผ์ ๋ณ๊ฒฝ ํ ๊ตฌ์ฑ ์์๋ฅผ ๋ค์ ๋น๋ํ๊ณ (๋ณ๊ฒฝ๋ ํ์ผ๋ง ๋ค์ ๋น๋) ์ด์ ๋ธ๋ฆฌ ํ๋ก์ธ์ค๋ฅผ ๋ณ๋ ฌํํ๊ธฐ๋ก ๊ฒฐ์ ํ ๊ธฐ์ค์ ๋ฐ๋ผ ๋ชจ๋ ์ข ์์ฑ์ ์์ ํ ์ ์ํด์ผ ํฉ๋๋ค. ํด๋ง์ ๋ํ ๋ฐ๋ณต ๊ฐ๋ฅํ ์กฐ๋ฆฝ์ ๋ณด์ฅํฉ๋๋ค. ๊ฐ๋ฐ์์ ์ปดํจํฐ์์ ํ๋ก์ ํธ๋ฅผ ๊ตฌ์ถํ ๊ฒฐ๊ณผ๋ ์ง์์ ํตํฉ ์๋ฒ์ ๊ฐ์ ํ์ฌ ์์คํ ์์ ๊ตฌ์ถํ ๊ฒฐ๊ณผ์ ์์ ํ ๋์ผํฉ๋๋ค.
Make ๋ฐ Ninja์ ๋ฌ๋ฆฌ Bazel์ ๋น๋ ์ค์ธ ํ์ผ์ ๋ํ ๋ช ๋ น ๋ฐ์ธ๋ฉ์ ์ ์ํ๋ ๋์ "์คํ ํ์ผ ๋น๋"์ ๊ฐ์ ๋ณด๋ค ์ถ์์ ์ธ ๊ธฐ์ฑ ๋ธ๋ก์ ์ฌ์ฉํ๋ ์ด์ ๋ธ๋ฆฌ ๊ท์น ์์ฑ์ ๋ํ ๋ ๋์ ์์ค์ ์ ๊ทผ ๋ฐฉ์์ ์ฌ์ฉํฉ๋๋ค. C++', 'C++๋ก ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ตฌ์ถ' ๋๋ 'C++์ฉ ํ ์คํธ ์คํ'๋ฟ๋ง ์๋๋ผ ๋์ ๋ฐ ๋น๋ ํ๋ซํผ ์๋ณ๋ ๊ฐ๋ฅํฉ๋๋ค. BUILD ํ ์คํธ ํ์ผ์์ ํ๋ก์ ํธ ๊ตฌ์ฑ ์์๋ ๊ฐ๋ณ ํ์ผ ๋ฐ ์ปดํ์ผ๋ฌ ํธ์ถ ๋ช ๋ น ์์ค์์ ์์ธํ ์ค๋ช ํ์ง ์๊ณ ์ผ๋ จ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ์คํ ํ์ผ ๋ฐ ํ ์คํธ๋ก ์ค๋ช ๋ฉ๋๋ค. ์ถ๊ฐ ๊ธฐ๋ฅ์ ํ์ฅ ์ฐ๊ฒฐ ๋ฉ์ปค๋์ฆ์ ํตํด ๊ตฌํ๋ฉ๋๋ค.
์ถ์ฒ : opennet.ru