일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 반복문
- rust
- 가재
- MSSQL
- 쌈채소
- 분산 식별자
- Config server
- 분산 신원
- 체리새우
- 기본문법
- 무화과
- rust 강좌
- rust 소개
- MSA
- for
- 물생활
- RSA
- 주말농장
- 애플 달팽이
- 텐더민트
- 조건문
- Feign
- 카디날
- Tendermint
- Python 강좌
- 구피
- did
- PKI
- golang 강좌
- 치비
- Today
- Total
comnic's Dev&Life
[Rust] 2. 패키지 관리자(Cargo) 본문
2. 패키지 관리자(Cargo)
2.1 Cargo 소개
Cargo는 Rust 언어의 공식 패키지 매니저 및 빌드 도구로, Rust 프로젝트를 효과적으로 관리하고 라이브러리를 쉽게 추가할 수 있도록 도와줍니다. 주요 기능으로는 패키지 관리, 빌드, 테스트, 문서 생성 등이 있습니다.
패키지 관리
Rust 프로젝트의 종속성은 Cargo.toml 파일에서 관리됩니다. 각 패키지의 이름과 버전은 해당 파일에 명시되어 있으며, cargo build 명령어를 실행하면 이러한 종속성이 자동으로 관리되고 빌드됩니다.
간략히 정리하면 아래와 같습니다.
- 패키지 관리자: Cargo는 Rust 프로젝트의 종속성을 관리하고 외부 라이브러리를 쉽게 추가할 수 있게 해줍니다. Cargo.toml 파일에 종속성을 명시하면, Cargo가 이를 자동으로 관리하여 필요한 라이브러리를 다운로드하고 빌드합니다.
- 빌드 시스템: Cargo는 Rust 프로젝트를 빌드하는 강력한 도구입니다. cargo build 명령어를 통해 프로젝트를 빌드하면, 종속성 및 소스 코드를 컴파일하고 실행 파일을 생성합니다.
- 테스트 지원: Rust에서는 테스트가 중요한 역할을 합니다. Cargo는 테스트를 위한 프레임워크를 내장하고 있으며, cargo test 명령어를 사용하여 프로젝트의 테스트를 실행할 수 있습니다.
- 도큐먼트 생성: Cargo는 코드에 대한 문서를 생성하고 관리하는 기능도 제공합니다. cargo doc 명령어를 통해 코드 주석을 기반으로 자동으로 문서를 생성할 수 있습니다.
- 빌드 구성 및 환경 설정: Cargo.toml 파일은 Rust 프로젝트의 구성을 정의하는 중요한 파일입니다. 이 파일에서 프로젝트의 이름, 버전, 종속성, 빌드 설정 등을 관리할 수 있습니다.
- 코드 실행 및 배포: Cargo는 빌드된 프로젝트를 실행하거나, cargo run 명령어를 사용하여 프로젝트를 편리하게 실행할 수 있는 기능을 제공합니다. 또한, cargo publish 명령어를 사용하여 Rust의 패키지 레지스트리에 프로젝트를 배포할 수 있습니다.
2.2 Cargo 사용법
1. 프로젝트 생성
# 새로운 Rust 프로젝트 생성
cargo new my_project
cd my_project
위 명령어를 실행하면, my_project라는 디렉토리에 Rust 프로젝트의 기본 구조가 생성됩니다.
2. 패키지 추가
Cargo.toml 파일을 열어 종속성을 추가합니다.
[dependencies]
rand = "0.8.5"
여기서는 rand 라이브러리를 추가했습니다.
3. rust 예제 파일 작성
src/main.rs 파일을 열어 간단한 Rust 예제 코드를 작성합니다.
use rand::Rng;
fn main() {
let random_number = rand::thread_rng().gen_range(1..101);
println!("Random number: {}", random_number);
}
위 코드는 간단히 랜덤한 숫자를 생성해서 출력하는 프로그램입니다.
4. 빌드 및 실행
# 프로젝트 빌드
cargo build
# 빌드된 프로젝트 실행
cargo run
코드를 수정하거나 새로운 종속성을 추가한 경우에는 다시 cargo build 명령으로 빌드한 후, cargo run 명령으로 실행합니다.
5. 테스트
Rust에서는 테스트가 중요하므로, 간단한 테스트도 추가해봅시다. src/main.rs 파일에 아래 코드를 추가합니다.
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_random_number() {
let random_number = rand::thread_rng().gen_range(1..101);
assert!(random_number >= 1 && random_number <= 100);
}
}
그리고 터미널에서 다음 명령어로 테스트를 실행합니다.
# 프로젝트 테스트 실행
cargo test
6. 문서 생성
# 코드 주석을 기반으로 문서 생성
cargo doc
생성된 문서는 target/doc 디렉토리에 저장됩니다.
위와 같이 실행되며, 해당 디렉토리(target/doc)에는 아래와 같은 파일들이 생성된 것을 알 수 있습니다.
위 파일 중 help.html 파일을 브라우저에서 열면 아래와 같은 화면이 나옵니다.
이번 챕터에서는 cargo에 대해 소개하고 간단히 사용법을 알아봤습니다. doc에 대한 자세한 얘기는 다른 챕터에서 다룰 수 있도록 준비하겠습니다.
'Rust' 카테고리의 다른 글
[Rust] 3. 기본 문법과 데이터 타입 (0) | 2023.12.03 |
---|---|
[Rust] 2-1. 패키지 관리자 Util(Cargo-edit) (2) | 2023.12.02 |
[Rust 예제] 숫자 맞추기 게임 (0) | 2023.12.02 |
[Rust] 1. 소개와 설치 (1) | 2023.11.30 |
[Rust]소개와 연재 시작 (1) | 2023.11.30 |