본문 바로가기

언어/Rust

Rust Cargo로 빌드 하고 실행하기

반응형

Cargo는 Rust의 패키지 관리자이자 빌드 시스템입니다. Cargo를 사용하면 Rust 프로젝트를 관리하고, 외부 라이브러리를 추가하고, 프로젝트를 빌드하고, 테스트를 실행하는 등의 작업을 간편하게 수행할 수 있습니다. 아래에 Cargo에 대한 설명과 기본적인 사용 방법을 단계별로 설명하겠습니다.

Cargo의 주요 기능

  1. 프로젝트 생성: 새로운 Rust 프로젝트를 초기화합니다.
  2. 빌드: 프로젝트를 컴파일합니다.
  3. 의존성 관리: 외부 라이브러리를 추가하고 관리합니다.
  4. 테스트: 프로젝트의 테스트를 실행합니다.
  5. 배포: 프로젝트를 패키징하고 배포합니다.

Cargo 설치 확인

Rust를 설치할 때 Cargo도 함께 설치됩니다. 다음 명령어로 Cargo가 설치되었는지 확인할 수 있습니다:

cargo --version

Cargo 사용 방법

1. 새로운 프로젝트 생성

새로운 Rust 프로젝트를 생성하려면 cargo new 명령어를 사용합니다. 프로젝트 이름으로 hello_cargo를 예로 들겠습니다:

cargo new hello_cargo

이 명령어는 다음과 같은 디렉토리 구조를 가진 새로운 프로젝트를 생성합니다:

hello_cargo
├── Cargo.toml
└── src
    └── main.rs
  • Cargo.toml: 프로젝트의 메타데이터와 의존성을 정의하는 파일입니다.
  • src/main.rs: 프로젝트의 기본 Rust 코드 파일입니다.

2. 프로젝트 빌드

프로젝트 디렉토리로 이동한 후 cargo build 명령어를 사용하여 프로젝트를 빌드합니다:

cd hello_cargo
cargo build

이 명령어는 target/debug 디렉토리에 빌드된 실행 파일을 생성합니다. 디버그 모드로 빌드되며, 최적화가 적용되지 않습니다.

3. 프로젝트 실행

빌드된 프로젝트를 실행하려면 cargo run 명령어를 사용합니다:

cargo run

이 명령어는 프로젝트를 빌드하고, 빌드된 실행 파일을 실행합니다. 기본 코드에서는 "Hello, world!" 메시지가 출력됩니다.

4. 릴리즈 모드로 빌드

프로덕션 환경에서 사용할 최적화된 빌드를 생성하려면 cargo build --release 명령어를 사용합니다:

cargo build --release

이 명령어는 target/release 디렉토리에 최적화된 실행 파일을 생성합니다.

5. 의존성 추가

프로젝트에 외부 라이브러리를 추가하려면 Cargo.toml 파일에 의존성을 추가해야 합니다. 예를 들어, rand 라이브러리를 추가하려면 Cargo.toml 파일을 열고 다음을 추가합니다:

[dependencies]
rand = "0.8"

그런 다음 cargo build 명령어를 실행하여 새로운 의존성을 다운로드하고 빌드합니다:

cargo build

6. 테스트 실행

Rust에서는 테스트를 작성하고 실행하는 기능을 기본으로 제공합니다. 테스트를 실행하려면 cargo test 명령어를 사용합니다:

cargo test

이 명령어는 프로젝트의 모든 테스트를 실행하고 결과를 출력합니다.

예제: 간단한 프로젝트 생성 및 실행

1. 프로젝트 생성

cargo new hello_cargo
cd hello_cargo

2. src/main.rs 파일 수정

fn main() {
    println!("Hello, Cargo!");
}

3. 프로젝트 빌드 및 실행

cargo build
cargo run

이 명령어를 실행하면 "Hello, Cargo!" 메시지가 출력됩니다.

4. Cargo.toml 파일에 의존성 추가

[dependencies]
rand = "0.8"

5. src/main.rs 파일 수정하여 rand 라이브러리 사용

use rand::Rng;

fn main() {
    let mut rng = rand::thread_rng();
    let n: u32 = rng.gen_range(0..10);
    println!("Random number: {}", n);
}

6. 프로젝트 빌드 및 실행

cargo build
cargo run

이 명령어를 실행하면 0에서 9 사이의 랜덤한 숫자가 출력됩니다.

이와 같이, Cargo를 사용하면 Rust 프로젝트를 쉽게 생성하고 관리할 수 있습니다. Cargo는 의존성 관리, 빌드 시스템, 테스트 실행 등 다양한 기능을 제공하여 개발을 편리하게 해줍니다.

반응형