더북(TheBook)

5장에서 lib.rs와 main.rs 파일의 차이점과 카고가 언제, 어떤 파일을 생성하는지 알아볼 것이다. target 폴더에는 debug라는 또 다른 폴더가 있는데, cargo run 명령으로 생성되어 컴파일된 코드가 들어 있다. 간단하게 cargo build를 실행해도 동일한 효과를 내지만, 이 명령은 빌드만 하고 프로그램은 실행하지 않는다.

러스트 프로그램을 빌드할 때 러스트 컴파일러(Rustc)는 바이트코드를 생성하고 이를 LLVM(https://llvm.org)4이라는 다른 컴파일러에 전달하여 기계 코드를 만든다. 이는 LLVM이 지원하는 모든 운영체제에서 러스트를 컴파일할 수 있다는 것이다. 전체 구조는 그림 1-2에 나와 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.