Hello, Cargo! (with VS Code)

2024. 10. 7. 15:55·Programming Language/RUST

1. Cargo란?

Cargo(카고)는 러스트의 빌드 시스템 및 패키지 매니저이다.

대부분 러스트 사용자들은 Cargo를 이용하여 러스트 프로젝트를 관리한다고 한다.

→ 탁월한 의존성 관리를 제공함!

💡 Rust 설치를 rustup을 통해 했다면, Cargo도 함께 설치됨

 

 

2. Cargo를 사용해 프로젝트 생성하기

Rust 프로그램을 만들기 위해 `cargo new` 명령을 사용해 새 프로젝트를 생성할 수 있다.

cmd에서 다음을 실행해 새 프로젝트를 생성한다.

cargo new hello_world

 

해당 프로젝트 디렉터리로 이동 후에 VS Code를 실행하면 자동으로 폴더가 선택된다.

cd hello_world
code .

 

자동으로 생성된 프로젝트의 파일 구조는 다음과 같다.

Cargo.toml - 프로젝트의 설정과 의존성을 관리하는 파일
Cargo.lock - 프로젝트가 의존하는 모든 패키지의 구체적인 버전과 그 의존성 트리를 기록하는 파일

 

`src/main.rs` 파일을 확인해보면 다음과 같은 코드가 작성되어 있는 것을 볼 수 있다.

이는 “Hello, world!”를 출력하는 `main()`함수가 존재하는 코드이다.

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

 

 

3. Cargo로 빌드하기

VS Code 터미널에서 아래 명령어를 통해 프로젝트를 빌드 할 수 있다.

cargo build

 

빌드가 완료되면 `target/debug` 폴더에 빌드된 실행 파일이 생성된 것을 볼 수 있다.

 

 

4. 프로젝트 실행하기

코드를 실행하려면 다음 명령어를 입력하면 된다.

이 때, build도 자동으로 되므로, exe 파일이 생성된다.

cargo run

 

 

5. 프로젝트 컴파일 확인하기

작성한 코드가 컴파일 되는지 빠르게 확인해주는 명령어다.

실행파일을 생성하지 않으므로 컴파일이 되는지 확인하기에 `cargo build`보다 훨씬 빠르다.

cargo check

 

 


참고 자료

https://code.visualstudio.com/docs/languages/rust

 

Rust with Visual Studio Code

Learn about Visual Studio Code editor features (code completion, debugging, snippets, linting) for Rust.

code.visualstudio.com

 

https://rinthel.github.io/rust-lang-book-ko/ch01-03-hello-cargo.html

 

Hello, Cargo! - The Rust Programming Language

이 문서는 2판 번역본입니다. 최신 2021 에디션 문서는 https://doc.rust-kr.org 에서 확인하실 수 있습니다. Cargo(카고)는 러스트의 빌드 시스템 및 패키지 매니저입니다. 대부분의 러스트인들이 이 도구

rinthel.github.io

 

저작자표시 비영리 (새창열림)

'Programming Language > RUST' 카테고리의 다른 글

[Rustling] exercises/01_variables/variables1.rs 풀기  (1) 2024.10.11
Rustling 시작하기  (3) 2024.10.11
RUST의 데이터 타입  (0) 2024.10.10
Rust의 변수  (1) 2024.10.08
Rust로 만드는 숫자 추리 게임  (8) 2024.10.08
'Programming Language/RUST' 카테고리의 다른 글
  • Rustling 시작하기
  • RUST의 데이터 타입
  • Rust의 변수
  • Rust로 만드는 숫자 추리 게임
602zzang
602zzang
  • 602zzang
    yks_STUDY
    602zzang
  • 전체
    오늘
    어제
    • 분류 전체보기 (77)
      • Programming Language (36)
        • C (15)
        • PYTHON (9)
        • RUST (12)
      • Reverse Engineering (3)
      • OS (17)
        • LINUX (17)
      • 보안 이슈 (6)
      • Digital Forensics (1)
      • CTF (8)
      • 기타 (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    공급망
    P4C
    picoCTF
    빡공팟
    TeamH4C
    rust
    백준
    파이썬
    python
    보안이슈
    rustling
    cyberdefenders
    c
    보안동향
    bandit
    드림핵
    Rocky Linux
    소켓 통신
    코드업
    umassctf2025
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
602zzang
Hello, Cargo! (with VS Code)
상단으로

티스토리툴바