rustc — Rust 컴파일러
개발 / 빌드 / rustc.html
Rust 소스를 단일 바이너리로 컴파일하는 공식 컴파일러.
기본 정보
| 명령어 이름 | rustc |
|---|---|
| 한 줄 소개 | Rust 소스를 단일 바이너리로 컴파일하는 공식 컴파일러. |
| 제공 | Rust Project |
| 공식 문서 | https://doc.rust-lang.org/rustc/ |
| 지원 운영체제 | Linux, macOS, Windows |
| 설치 여부 | rustup으로 설치 권장 |
| 분류 | 빌드·컴파일 (태그: 언어 툴체인 (태그: rustc, Rust, 컴파일, cargo)) |
이 명령어는 무엇인가?
rustc는 Rust 소스를 직접 컴파일합니다. 소유권 검사와 차용 검사를 컴파일 단계에서 수행하므로 실행 전에 메모리 안전성 문제를 상당 부분 차단합니다.
실무에서는 의존성과 빌드 설정을 관리하는 cargo를 주로 쓰고, rustc는 단일 파일 실험이나 세부 옵션 제어에 사용합니다. 최적화와 디버그 심볼은 -C 옵션으로 조정합니다.
어떤 문제를 해결하는가?
- Rust 문법을 단일 파일로 빠르게 시험할 때
- cargo 없이 최소 구성으로 바이너리를 만들 때
- 최적화·디버그 옵션을 직접 제어할 때
- 컴파일 오류 메시지를 보며 코드를 다듬을 때
주요 기능
단일 파일 컴파일
소스 하나를 실행 파일로 만듭니다.
- 활용 상황: 문법이나 알고리즘을 시험할 때
- 얻는 결과: 의존성 없는 독립 바이너리가 생깁니다.
- 제한 사항: 외부 크레이트는 직접 지정해야 합니다.
최적화 수준
-C opt-level로 최적화 강도를 조정합니다.
- 활용 상황: 성능 비교나 배포 빌드를 할 때
- 얻는 결과: 성능과 빌드 시간의 균형을 맞출 수 있습니다.
- 제한 사항: 높은 최적화는 디버깅을 어렵게 만듭니다.
진단 메시지
소유권·차용 오류를 상세히 설명합니다.
- 활용 상황: 컴파일 오류의 원인을 이해하려 할 때
- 얻는 결과: 수정 방향을 제시받을 수 있습니다.
- 제한 사항: 메시지가 길어 초보자에게는 부담이 될 수 있습니다.
설치 및 실행
설치 여부 확인
rustc --version
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh source "$HOME/.cargo/env"
실제 사용 예제
단일 파일 컴파일
기본 최적화로 바이너리를 만듭니다.
rustc main.rs -o app
./app
릴리스 최적화
배포용으로 최적화 수준을 높입니다.
rustc -C opt-level=3 main.rs -o app
디버그 정보 포함
디버거에서 변수를 볼 수 있게 빌드합니다.
rustc -g main.rs -o app-debug