설치하기
설치하기
Rust를 쓰려면 첫 단계로 설치부터 해야 해요. Rust는 rustup이라는 도구를 통해 내려받는데, rustup은 Rust 버전과 관련 도구들을 관리해주는 커맨드라인 도구예요. 다운로드하려면 인터넷 연결이 필요합니다.
참고: 어떤 이유로든
rustup을 쓰고 싶지 않다면 Other Rust Installation Methods 페이지에서 다른 설치 방법을 확인할 수 있어요.
아래 단계를 따라 하면 최신 안정(stable) 버전의 Rust 컴파일러가 설치됩니다. Rust의 안정성(stability) 보장 덕분에, 이 책에서 컴파일되는 모든 예제는 더 새로운 Rust 버전에서도 계속 컴파일될 거예요. 다만 Rust가 오류 메시지와 경고를 자주 개선하기 때문에 버전에 따라 출력 결과는 조금 다를 수 있습니다. 다시 말해, 이 단계로 설치한 그 어떤 최신 안정 버전의 Rust라도 이 책의 내용과 함께 정상적으로 동작할 거예요.
출처: The Rust Book
본문
커맨드라인 표기법
이번 챕터와 책 전체에서 터미널에 입력할 명령들을 보여줄 텐데요. 터미널에 직접 입력해야 할 줄은 전부 $로 시작합니다. $ 자체는 입력할 필요가 없어요. $는 각 명령의 시작을 알려주는 명령줄 프롬프트일 뿐이에요. $로 시작하지 않는 줄은 보통 앞선 명령의 출력 결과를 보여줍니다. 추가로 PowerShell 전용 예시는 $ 대신 >를 사용할게요.
Linux 또는 macOS에 rustup 설치하기
Linux나 macOS를 쓰고 있다면 터미널을 열어 다음 명령을 입력하세요.
$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
이 명령은 스크립트를 내려받아 rustup 도구 설치를 시작하며, rustup이 최신 안정 버전의 Rust를 설치해줍니다. 비밀번호를 요구할 수도 있어요. 설치가 성공하면 다음과 같은 줄이 나타납니다.
Rust is installed now. Great!
그리고 *링커(linker)*도 필요합니다. 링커는 Rust가 컴파일된 산출물들을 하나의 파일로 이어 붙이는 데 쓰는 프로그램이에요. 아마 이미 하나쯤은 있을 가능성이 높아요. 링커 오류가 발생한다면 C 컴파일러를 설치하면 되는데, C 컴파일러에는 링커가 보통 포함돼 있거든요. 흔한 Rust 패키지 중 상당수가 C 코드에 의존하고 있어서 C 컴파일러가 필요할 때가 많으니 이 역시 쓸모가 큽니다.
macOS에서는 다음 명령으로 C 컴파일러를 구할 수 있어요.
$ xcode-select --install
Linux 사용자는 보통 자신의 배포판 문서에 따라 GCC나 Clang을 설치하면 됩니다. 예를 들어 Ubuntu를 쓴다면 build-essential 패키지를 설치하면 돼요.
Windows에 rustup 설치하기
Windows에서는 https://www.rust-lang.org/tools/install로 이동해 설치 안내를 따라 Rust를 설치하세요. 설치 중 어느 시점에 Visual Studio를 설치하라는 메시지가 나올 텐데요. Visual Studio는 프로그램 컴파일에 필요한 링커와 네이티브 라이브러리를 제공합니다. 이 단계에서 더 도움이 필요하다면 https://rust-lang.github.io/rustup/installation/windows-msvc.html를 참고하세요.
이 책의 나머지 부분에서는 cmd.exe와 PowerShell 둘 다에서 동작하는 명령을 사용할게요. 특별한 차이점이 있다면 그때 그때 어느 것을 써야 하는지 설명할게요.
문제 해결 (Troubleshooting)
Rust가 제대로 설치됐는지 확인하려면 셸을 열고 다음 줄을 입력해보세요.
$ rustc --version
발표된 최신 안정 버전의 버전 번호, 커밋 해시, 커밋 날짜가 다음 형식으로 보일 겁니다.
rustc x.y.z (abcabcabc yyyy-mm-dd)
이 정보가 보인다면 Rust 설치가 성공한 거예요! 만약 보이지 않는다면 Rust가 시스템 %PATH% 변수에 들어 있는지 확인해보세요.
Windows CMD에서는 이렇게 확인해요.
> echo %PATH%
PowerShell에서는 이렇게 확인하세요.
> echo $env:Path
Linux와 macOS에서는 이렇게요.
$ echo $PATH
모두 정상인데도 Rust가 동작하지 않는다면 도움을 받을 곳이 여러 곳 있어요. 다른 Rustaceans(우리끼리 쓰는 장난스러운 별명이에요)와 연락하는 방법은 커뮤니티 페이지에서 찾아볼 수 있습니다.
업데이트와 제거
rustup으로 Rust를 설치했다면 새로 발표된 버전으로의 업데이트는 아주 쉽습니다. 셸에서 다음 업데이트 스크립트를 실행하세요.
$ rustup update
Rust와 rustup을 제거하려면 셸에서 다음 제거 스크립트를 실행하세요.
$ rustup self uninstall
로컬 문서 읽기
Rust를 설치하면 문서의 로컬 사본도 함께 포함되기 때문에 오프라인으로도 읽을 수 있어요. rustup doc을 실행하면 로컬 문서가 브라우저에서 열립니다.
표준 라이브러리가 제공하는 타입이나 함수가 뭘 하는지, 어떻게 쓰는지 잘 모르겠다면 그때마다 API 문서를 찾아보면 돼요!
텍스트 에디터와 IDE 사용하기
이 책은 Rust 코드를 작성하는 데 어떤 도구를 쓰는지에 대해 전제하지 않습니다. 거의 모든 텍스트 에디터로 충분히 해낼 수 있어요! 다만 많은 텍스트 에디터와 통합 개발 환경(IDE)이 Rust를 기본적으로 지원합니다. 많은 에디터와 IDE의 꽤 최신 목록은 Rust 웹사이트의 도구 페이지에서 언제든지 찾아볼 수 있어요.
이 책을 오프라인으로 작업하기
몇몇 예제에서는 표준 라이브러리 바깥의 Rust 패키지들을 사용할 거예요. 그런 예제를 따라 해 보려면 인터넷 연결이 필요하거나, 그 의존성들을 미리 내려받아 두어야 합니다. 의존성을 미리 내려받으려면 다음 명령을 실행하면 돼요. (cargo가 뭐고 각 명령이 뭘 하는지는 나중에 자세히 설명할게요.)
$ cargo new get-dependencies
$ cd get-dependencies
$ cargo add [email protected] [email protected]
이렇게 하면 이 패키지들의 다운로드가 캐시되어 나중에 다시 내려받지 않아도 돼요. 이 명령을 실행한 뒤에는 get-dependencies 폴더를 유지할 필요 없습니다. 실행했다면, 책의 나머지 부분에서 모든 cargo 명령에 --offline 플래그를 붙이면 네트워크를 시도하는 대신 이 캐시된 버전을 사용할 수 있어요.