Chromium에 처음 기여한다면, 첫 목표는 소스를 내려받아 내 컴퓨터에서 브라우저를 실행해 보는 것입니다.
이 글은 macOS와 Linux에서 데스크톱 Chromium을 빌드할 때의 방법을 다룹니다. 전체 과정은 개발 도구 준비 → 소스 받기 → 빌드 설정 생성 → 빌드 → 실행입니다. 운영체제에 따라 달라지는 준비 사항과 실행 명령은 따로 표시했습니다. 지원 환경과 최신 요구 사항은 운영체제별 공식 안내에서 확인할 수 있습니다.
1. 개발 환경을 준비합니다.
먼저 Git을 설치하고, 사용하는 운영체제에 필요한 개발 도구를 준비합니다.
| 운영체제 | 준비할 도구와 확인 사항 |
|---|---|
| macOS | Xcode, macOS SDK, APFS 형식의 작업 볼륨 |
| Linux | Git, Python 3, 배포판에 맞는 빌드 의존성 패키지 |
필요한 버전과 세부 설치 항목은 바뀔 수 있습니다. macOS 문서, Linux 문서의 준비 과정을 먼저 확인하세요. Linux는 배포판에 따라 추가 설정이 필요할 수 있습니다.
소스와 빌드 결과물을 저장할 공간도 확보합니다. 필요한 공간과 빌드 시간은 환경과 설정에 따라 달라지므로, 첫 빌드는 여유를 두고 진행하는 편이 좋습니다. git 이력을 포함해서 120기가, 빌드에는 수십 기가 이상이 필요하므로 200기가 이상은 확보한 상태로 진행하시는 걸 추천합니다.
명령은 사용하는 터미널의 셸에서 실행합니다.
2. Chromium 개발 도구를 설치합니다.
Chromium은 depot_tools라는 도구 모음을 사용합니다. 원하는 작업 디렉터리에서 다음 명령을 실행합니다.
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
설치한 depot_tools 디렉터리의 절대 경로를 PATH 환경 변수에 등록합니다. PATH는 터미널이 명령어를 찾는 디렉터리 목록입니다.
| 운영체제 | PATH 설정 방법 |
|---|---|
| macOS | 셸 설정 파일에서 export PATH="$PATH:/실제/경로/depot_tools" 추가 |
| Linux | 셸 설정 파일에서 export PATH="/실제/경로/depot_tools:$PATH" 추가 |
/실제/경로/depot_tools는 자신이 설치한 경로로 바꿉니다. 셸 설정 파일은 사용 중인 셸에 따라 ~/.zshrc, ~/.bashrc 등이 됩니다. 설정을 적용한 새 터미널에서 다음 단계를 진행하세요. PATH 등록 순서는 각 운영체제의 공식 설치 안내를 따릅니다. macOS, Linux
3. 소스와 의존성을 내려받습니다.
소스를 저장할 상위 디렉터리로 이동한 뒤, 새로운 chromium 디렉터리를 만듭니다. 전체 경로에는 공백이 들어가지 않도록 합니다.
mkdir chromium
cd chromium
fetch --nohooks chromium
cd src
fetch는 소스와 의존성을 받습니다. 여기서는 다운로드 이후의 준비 작업인 hooks를 나중에 실행하도록 --nohooks를 사용했습니다. 특히 Linux에서는 시스템 의존성을 먼저 설치한 뒤 hooks를 실행하는 순서가 필요합니다. 소스 받기와 hooks 안내
완료되면 chromium 아래에 .gclient 파일과 src 디렉터리가 생깁니다. 이후 명령은 모두 chromium/src에서 실행합니다.
| 경로 | 역할 |
|---|---|
chromium/.gclient |
체크아웃과 의존성 관리 설정 |
chromium/src |
소스 코드와 Git 작업 위치 |
chromium/src/out/Default |
이후 생성할 빌드 설정과 결과물의 위치 |
Linux에서 Ubuntu를 사용한다면 src에서 다음 스크립트로 시스템 의존성을 설치합니다. 다른 배포판에서는 패키지와 설치 방법을 조정해야 할 수 있습니다.
./build/install-build-deps.sh
이제 macOS와 Linux 모두 hooks를 실행합니다. 이 단계에서 빌드에 필요한 추가 도구와 파일을 준비합니다.
gclient runhooks
Linux의 의존성 설치 순서와 hooks의 역할은 공식 안내에 설명되어 있습니다.
4. 빌드 설정을 생성합니다.
GN으로 빌드에 필요한 파일을 생성합니다.
gn gen out/Default
Default는 빌드 디렉터리의 이름입니다. 설정별로 여러 빌드 디렉터리를 둘 수도 있지만, 처음에는 하나로 시작하면 됩니다. GN은 소스를 컴파일하기 전에 빌드 대상과 의존성을 반영한 빌드 파일을 생성합니다. GN 시작 안내
기본 설정은 디버그 빌드입니다. 설정을 바꾸고 싶을 때는 다음 명령을 사용합니다.
gn args out/Default
자주 보게 되는 옵션은 다음과 같습니다.
| 옵션 | 의미 |
|---|---|
is_debug |
디버그 빌드 여부 |
is_component_build |
여러 공유 라이브러리로 나누어 빌드할지 여부 |
symbol_level |
디버깅 정보를 얼마나 포함할지 설정 |
컴포넌트 빌드는 링크 시간을 줄이는 데 도움이 됩니다. 디버깅 정보를 줄이면 빌드 부담을 낮출 수 있지만, 문제를 추적할 때 확인할 수 있는 정보도 줄어듭니다. 처음에는 기본 설정으로 시작하고, 필요에 따라 옵션을 바꾸는 편이 좋습니다. Chromium 빌드 설정 안내
5. 브라우저를 빌드합니다.
다음 명령으로 브라우저를 빌드합니다. 참고로 사양에 따라 다르지만, 첫 빌드라면 m5 맥북 기준으로 3시간 정도 걸립니다.
autoninja -C out/Default chrome
-C out/Default는 사용할 빌드 디렉터리, chrome은 브라우저 빌드 대상을 뜻합니다. GN으로 빌드 설정을 생성한 뒤 autoninja로 빌드를 실행하는 흐름은 공통입니다. macOS 빌드 안내
소스를 받는 시간과 컴파일하는 시간은 별개입니다. 오류가 발생하면 실행한 명령과 처음 실패한 작업의 오류 메시지를 함께 기록해 두세요. 도움을 요청할 때는 마지막의 “빌드 실패” 문구보다 실제 실패 원인이 나온 부분이 유용합니다.
6. 직접 빌드한 Chromium을 실행합니다.
빌드가 성공하면 운영체제에 맞는 명령으로 실행합니다. 아래 명령도 src 디렉터리 기준입니다.
macOS:
out/Default/Chromium.app/Contents/MacOS/Chromium --user-data-dir="$HOME/chromium-dev-profile"
Linux:
out/Default/chrome --user-data-dir="$HOME/chromium-dev-profile"
실행 파일 위치는 운영체제마다 다릅니다. macOS 실행 안내, Linux 실행 안내
--user-data-dir는 방문 기록, 쿠키, 설정 등을 저장할 위치를 지정합니다. 여기서는 개발용 데이터를 별도 폴더에 모으기 위해 사용했습니다. 사용자 데이터 디렉터리 안내
브라우저가 열리면 주소창에 다음을 입력합니다.
chrome://version
다음 화면처럼 보이게 됩니다.

실행 파일 경로가 방금 빌드한 out/Default 아래를 가리키는지 확인합니다. 프로필 경로도 지정한 개발용 폴더 아래인지 확인하면 됩니다. 프로필 위치를 확인하는 방법은 공식 문서에서도 안내합니다.
'개발' 카테고리의 다른 글
| [달레스터디] 리트코드 스터디 8기 회고 (0) | 2026.10.18 |
|---|---|
| Promise, async, await는 어떻게 이어질까: Chromium으로 이해하는 비동기 실행 (0) | 2026.09.20 |
| HTML에서 JavaScript를 불러오는 방법과 차이점 (1) | 2026.09.13 |
| ‘Discord로 로그인’을 누르면 무슨 일이 일어날까? (0) | 2026.09.06 |
| LLDB을 이용한 C++ 디버깅 원리 (1) | 2026.08.30 |