이제, 첫번째 프로그램 hello world 를 만들어보자. 적당한 폴더에 main.rs 파일을 만들어보자.
fn main() {
println!("안녕, 세상아 ~!");
}
그리고, 터미널에서 rustc main.rs 라고 입력해서 컴파일해본다. 그리고 디렉토리를 확인해보면, main.exe 라는 실행파일이 생긴 것을 확인할 수 있다.
main.exe 를 실행해보면 아래처럼 잘 나올것이다. 성공 ~!!!
그런데, 파일도 많아지고, 여러가지 라이브러리도 사용하려면 이렇게 해서는 할 일이 많아진다. 그래서 Rust에서는 cargo 라고 하는 빌드툴을 제공한다. 일단, cargo 의 버전부터 확인해보자.
cargo 를 이용해서 프로젝트를 생성할 수 있다. cargo new 프로젝트명 으로 하면되고, 일단 cargo new hello 로 입력해보자.
hello 라는 폴더가 생겼고, 그 안에 들어가 보면, Cargo.toml 과 src 폴더가 보인다. Cargo.toml 파일을 열어보면 아래와 같다. 여러가지 정보가 있고, 특히 [dependencies] 항목에는 내가 필요로 하는 라이브러리들을 나열해서 관리할 수 있다. Rust에서는 이런 라이브러리를 Crate 라고 표현한다. https://crates.io/ 에서 다양한 크레이트들을 찾아볼 수 있다.
그리고, src/main.rs 를 열어보자. 이 파일은 아까 작성했던 main.rs 와 다를 것이 없다.
이 상태에서 터미널에 cargo run 이라고 입력하면 소스를 빌드한 후에 바로 실행까지 해준다.
그리고, target 이라는 폴더 생기고, 그 아래에 debug 폴더가 있으며, 실행파일인 hello.exe 도 확인해볼 수 있다.
cargo build 라고 입력하면, 빌드만 하고, 역시 같은 위치에 같은 파일을 생성한다. 기본적으로 디버그 정보가 포함된 실행파일이라 사이즈가 좀 크다.
만약 릴리즈 모드로 빌드하려면, cargo build --release 라고 입력해주면 된다.
그러면, target 폴더 아래에 release 라는 새로운 폴더가 생기며, 역시 hello.exe 파일도 볼 수 있을 것이다.
파일 사이즈를 비교해보면 확실하게 줄어든 것을 알 수 있다.
여기까지 Rust 를 설치하고, Hello World 까지 출력해보았다. 이제, crate 를 하나 선정해서 적용해보자.
serde_json 라는 크레이트를 사용해보자. serde_json - crates.io: Rust Package Registry 에 접속해서 관련 정보를 확인한다.
약 한달 전에 업데이트된 따끈따근한 크레이트이다. 이제, cargo add serde_json 으로 설치하던지,Cargo.toml 의dependencies 항목에 serde_json = "1.0.128" 을 추가해본다.
다음처럼 main.rs 를 변경한다.
use serde_json::json;
fn main() {
let hong = json!({
"name": "홍길동",
"age": 21,
"phones": [
"010-1234-5678", "010-9876-2341"
]
});
println!("{hong}");
}
그리고, cargo run 을 실행해보자.
이런 방식으로 라이브러리(Crate)를 찾고 적용해볼 수 있다.
'Programming > Rust' 카테고리의 다른 글
Rust 바이너리 작게 만들기 (0) | 2025.01.03 |
---|---|
Rust: Auto-Reloading Development Server (개발서버 자동 리로딩) (0) | 2025.01.03 |
현 시점에서 Rust 언어를 배워야하는 이유 (0) | 2024.11.27 |
Rust 시작해보기 (rustup 설치) (0) | 2024.11.08 |