Rust 실행 파일 만들기

2023. 1. 8. 15:59Language/Rust

개요

컴파일러의 역할은 소스 코드를 기계 코드로 변환하고 해당 코드가 운영 체제와 CPU에서 실행 가능하도록 하는 많은 일을 관리 합니다.

Rust의 경우 rustc가 컴파일러 입니다.

Rust로 실행 파일을 만드는 방법은 두 가지가 있습니다. 첫째, 단일 파일을 rustc로 컴파일 하면 실행 파일을 만들거나, Cargo를 통해 프로젝트를 생성하고 컴파일하여 실행파일을 만드는 방법입니다.

 

단일 파일 컴파일

fn main() {
    println!("ok!")
}

Rust로 작성한 단일 파일을 컴파일 하기 위해서는 아래와 같은 절차를 따릅니다.

 

1. 소스코드를 파일에 저장한다. 파일이름은 ok.rs 파일의 확장자는 rs이다.

2. 소스 코드가 main() 함수를 포함하고 있어야 한다.

3. 터미널, cmd.exe, 파워쉘, bash 등 셀 창을 연다.

4. rustc ok.rs 명령을 실행 합니다.

 

rustc로 컴파일을 성공하면 콘솔에는 아무것도 출력되지 않습니다. rustc는 주어진 파일 이름을 이용해서 실행 파일의 이름을 결정합니다.

 

$ rustc ok.rs
$ ./ok
OK

윈도우의 경우 ok.exe로 만들어 집니다.

 

Cargo 프로젝트 컴파일

대부분의 프로젝트는 다수의 rust 파일로 이루어져 있습니다. 또한 여러 패키지를 포함하게 됩니다.

 

cargo는 rustc 보다 더 높은 수준의 도구로 여러 전체 크레이트를 관리합니다.

 

 

$ cargo new OK
Created binary (application) `OK` package

cargo new <프로젝트명> 을 하게 되면 OK라는 프로젝트 디렉터리가 생성 되면 안에 src 디렉터리와 Cargo.toml이 생성 됩니다.

 

 

 

OK 디렉터리로 이동하여 cargo build를 하게 되면 debug 디렉터리 등 실행 가능한 파일들이 생성됩니다.

 

$cargo build
   Compiling OK v0.1.0 (/home/bak/Temp/OK)
warning: crate `OK` should have a snake case name
  |
  = help: convert the identifier to snake case: `ok`
  = note: `#[warn(non_snake_case)]` on by default

warning: `OK` (bin "OK") generated 1 warning

Rust에서는 snake case로 이름을 짓기 때문에 생긴 경고이며 신경쓰지 않아도 됩니다.

 

 

 

여기서 cargo run 을 하게 되면 Hello, world!가 출력 됩니다.

 

 

 

'Language > Rust' 카테고리의 다른 글

Rust Dangling Pointer  (0) 2023.02.25
Rust의 배열  (0) 2023.01.09
Rust의 제네릭(Generic)  (0) 2023.01.09
Rust의 반복문  (0) 2023.01.08
Rust의 숫자  (0) 2023.01.08