Rust로 간단한 프로그램 작성해보기
rustc로 컴파일 하기
rust로 간단한 프로그램을 작성하고 실행을 해 본다. hello.rs
로 파일을 생성 한 뒤 아래의 코드를 작성하고 저장한다.
fn main() {
println!("Hello World!");
}
네이티브 코드로 컴파일하기 위해 터미널에서 아래의 명령을 친다.
$ rustc hello.rs
실행가능한 프로그램인 hello
가 만들어진다. 내가 쓰는 OS는 mac OS로 아래의 명령을 터미널에서 입력해서 해당프로그램을 실행 시킬 수 있다. 윈도우의 경우는 hello.exe
가 만들어진다.
$ ./hello
Hello World!
소스파일의 이름과 다르게 실행파일을 만들고 싶다면 아래와 같이 -o 실행 파일 이름
옵션을 사용한다.
$ rustc hello.rs -o first
rustc -O
명령은 실행 속도에 최적화된 네이티브 코드를 생성한다. 이 명령은 rustc -C opt-level=2;
와 같으며 가장 최적화 된 코드는 rustc -C -opt-level=3;
을 통해 생성된다.
python처럼 컴파일과 실행이 한 단계로 수행되는 동적 언어들과 다르게 rust는 컴파일과 실행이 분리되어 연속적인 단계로 수행된다.
cargo로 작업
Cargo
는 러스트의 패키지 및 종속성 관리자 이며 npm, pip와 비슷하다.
* cargo new 명령으로 폴더 구조 및 일부 템플릿을 만듦
* cargo build 명령으로 빌드
* cargo run 명령으로 프로젝트 실행
* cargo test 명령으로 프로젝트의 단위테스트를 실행
* cargo update 명령으로 프로젝트가 의존하고 있는 패키지들을 내려받고 빌드 할 수 있음
- 아래 명령으로
welcomec
라는 이름의 프로젝트 생성$ cargo new welcomecg --bin
--bin
은 카고에 실행 프로그램(바이너리)를 만든다는 옵션이다. 위 명령을 실행하고 나면 아래와 같은 구조가 만들어진다.Cargo.toml
파일은 프로젝트의 설정 파일이다. - 아래 명령으로 프로젝트를 빌드
$ cargo build
빌드를 하고 나면 아래와 같은 구조가 만들어진다.
- 아래 명령으로 프로그램을 실행
$ cargo run
Cargo.lock
은 애플리케이션의 종속성을 추적하기 위해 카고에서 사용하는 파일이다. 프로젝트에 의존하는 라이브러리 및 패키지 버전을 잠그는데 사용된다.