C#으로 엑셀 파일을 저장하는 방법에 대해 알아보겠습니다.
Rust를 학습하게 되어 기록하는 의미로 포스팅을 하려 합니다. 개발에는 VS Code를 사용하고, 리눅스(WSL)에서 러스트를 실행합니다. (WSL 설치 과정도 같이 정리합니다)
이번 글에서는 Windows Subsystem for Linux (WSL)에 Ubuntu 설치, Rust 설치 후 VS Code로 Hello World 작성 및 실행까지 진행해 보겠습니다.
WSL 설치가 필요없으신 분은 바로 2. Rust 설치로 넘어가주시면 됩니다.
러스트 학습 자료는 The Rust Programming Language (한글)입니다.
ChatGPT에게 Rust의 특징에 대해 물어보았습니다.
Rust는 안전성, 속도, 병행성(Concurrency) 등을 강조하는 시스템 프로그래밍 언어입니다.
이러한 특징들은 Rust를 안정적이고 안전하며 효율적인 언어로 만들어, 시스템 프로그래밍에서 사용되는 많은 언어들과 경쟁력을 가지게 만들었습니다.
WSL의 주요 명령어들입니다.
명령어 | 정보 |
---|---|
wsl --install |
WSL 설치 |
wsl --version |
현재 WSL 버전 확인 |
wsl --set-default-version {version} |
기본 WSL 버전 설정 |
wsl --update |
업데이트 |
wsl --list --online |
온라인에서 사용 가능한 배포판 리스트 |
wsl --list --verbose |
현재 설치된 배포판 리스트 |
wsl --install -d {image name} |
배포판 설치 |
wsl --unregister {image name} |
지우기 (데이터 삭제) |
wsl --status |
기본 WSL 정보 |
wsl --shutdown |
WSL 종료 |
wsl ~ |
WSL 실행 (Home 폴더) |
실행(Win + R)에서
winver
를 실행하여 현재 윈도우 버전을 확인할 수 있습니다. 버전이 낮을 경우 업데이트 혹은 설치를 해야 합니다.
PowerShell 혹은 명령 프롬프트(cmd)를 관리자 권한으로 실행시켜 아래 명령어를 입력합니다.
이미 WSL이 설치되어 있을 경우 WSL의 소개가 출력됩니다.
현재는 버전 2가 기본으로 설치되지만, 만약을 대비해 설정해줍니다.
설치는 이것으로 끝입니다.
Windows 버전이 맞는데 설치가 진행되지 않는다면, PC에서 가상화 기능을 지원하는지 확인해야 합니다.
PowerShell 또는 cmd에서 systeminfo.exe
를 실행하여 Hyper-V 요구 사항
부분이 모두 Yes
가 되어야 합니다. (참고)
Hyper-V가 불가능 할 경우 WSL을 사용할 수 없습니다.
해당 내용을 통과하였을 경우 PowerShell을 관리자 권한으로 실행시켜 다음 명령들을 입력합니다.
1
2
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
이제 다시 1.1.2. 설치를 진행합니다. (문제 발생 시 참고)
다음 명령으로 현재 사용 가능한 배포 버전을 확인합니다.
Ubuntu 22.04는 다음과 같이 설치합니다.
Ubuntu 설치가 완료되었습니다. 저장 공간은 Windows 탐색기의 좌측 목록에 Linux
로 생성되며 탐색기에서 직접 접근할 수 있습니다.
다음은 자주 사용할 명령어입니다.
wsl Home 실행
백그라운드에서 실행중인 가상머신 종료
이미지 제거
※ 주의: 이미지 제거 시 데이터도 같이 제거
본 글은 WSL Ubuntu-22.04를 기준으로 진행하기 때문에, 이 외의 환경에서 진행하시는 분들은 러스트 설치 페이지와 학습 자료를 참고해 주세요.
WSL로 Ubuntu를 설치하셨다면 먼저 다음 패키지를 설치해주셔야 합니다.
C 컴파일러와 같이 설치되는 링커가 필요합니다.
그 다음 Rust 관리 도구인 rustup
을 설치합니다.
설치가 되었다면 다음 명령어로 잘 실행되는지 확인합니다.
설치가 되었으나 경로를 찾지 못한다면 PATH에 ~/.cargo/bin
이 등록되었는지 확인하고, 등록되지 않았다면 등록해줍니다.
1
2
env | grep cargo # cargo 있는지 확인
export PATH=$PATH:~/.cargo/bin # cargo 경로 등록
다음은 러스트를 업데이트, 제거하는 명령어 입니다.
WSL에 설치하였을 경우 Code로 여는 방법은 여러가지 있습니다.
code .
Command Palette
(Ctrl + Shift + P)에서 wsl
검색, 원하는 방식으로 실행Remote Explorer
→ 위쪽 리스트에서 WSL Targets
선택 후 실행 (메뉴가 없다면 Dev Containers 확장 설치)프로그래밍 언어를 배울 때 가장 기초가 되는 Hello World
를 실행시켜 봅니다.
Rust의 확장자는 .rs
이며 파일명은 main.rs
로 생성합니다.
1
2
3
fn main() {
println!("Hello World from WSL !");
}
기본적인 컴파일 방법입니다.
컴파일에 성공할 경우 main
파일이 생성됩니다.
1
2
./main
Hello World from WSL !
WSL 설치와 Rust에서 Hello World 출력까지 진행해 보았습니다.
언뜻 보기에 문법이 Kotlin과 비슷한 느낌인데요, println!
의 !
는 매크로 역할이라고 합니다. (다음에 알아보겠습니다)
간단한 코드의 경우 rustc를 사용하여 컴파일 할 수 있지만, 라이브러리를 사용한다던지 옵션이 많아지면 직접 하는 것 보다 Cargo
를 사용하는 것이 편하다고 합니다.
그럼 다음 글에서 Cargo
를 사용하여 빌드, 실행하는 방법을 알아보고 코드도 살펴보도록 하겠습니다.