安装
第一步是安装 Rust。我们会通过 rustup 下载 Rust,这是一个管理 Rust 版本和相关工具的命令行工具。下载时需要联网。
注意:如果你出于某些理由倾向于不使用
rustup,请到 Rust 的其他安装方法页面 查看其它安装选项。
接下来的步骤会安装最新稳定版 Rust 编译器。Rust 的稳定性保证意味着,本书中所有能够编译的示例,在更新的 Rust 版本中也应继续能够编译。不同版本之间的输出可能略有差异,因为 Rust 经常会改进错误信息和警告。也就是说,按照这些步骤安装的任何较新的稳定版 Rust,都应该能正常配合本书内容使用。
命令行标记
本章和全书中,我们会展示一些在终端中使用的命令。所有需要输入到终端的行都以
$开头。你不需要输入$字符;这里显示的$字符表示命令行提示符,仅用于提示每行命令的起点。不以$起始的行通常展示前一个命令的输出。另外,PowerShell 专用的示例会采用>而不是$。
在 Linux 或 macOS 上安装 rustup
如果你使用 Linux 或 macOS,打开终端并输入如下命令:
$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
这条命令会下载一个脚本并启动 rustup 工具的安装,它会安装最新稳定版 Rust。过程中可能会提示你输入密码。如果安装成功,将会出现如下内容:
Rust is installed now. Great!
另外,你还需要一个 链接器(linker),它是 Rust 用来将编译输出连接成单个文件的程序。你很可能已经安装了它。如果遇到链接器错误,你应该安装一个 C 编译器,其中通常会包含链接器。C 编译器本身也很有用,因为一些常见的 Rust 包依赖 C 代码,因此需要 C 编译器。
在 macOS 上,你可以通过运行以下命令获得 C 语言编译器:
$ xcode-select --install
Linux 用户通常应根据自己发行版(distribution)的文档安装 GCC 或 Clang。比如,如果你使用 Ubuntu,可以安装 build-essential 包。
在 Windows 上安装 rustup
在 Windows 上,前往 https://www.rust-lang.org/tools/install 并按照说明安装 Rust。在安装过程中的某一步,你会被提示安装 Visual Studio。它提供了链接器以及编译程序所需的本地库。如果你在这一步需要更多帮助,请访问 https://rust-lang.github.io/rustup/installation/windows-msvc.html。
本书的余下部分会使用能同时运行于 cmd.exe 和 PowerShell 的命令。如果存在特定差异,我们会解释使用哪一个。
故障排除(Troubleshooting)
要检查 Rust 是否安装正确,打开 shell 并输入:
$ rustc --version
你应该会看到已发布的最新稳定版的版本号、commit hash 和 commit 日期,格式如下:
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(Rust 用户对自己的一个戏称)。
更新与卸载
通过 rustup 安装 Rust 之后,更新到新发布的版本很简单。只需要在 shell 中运行下面的更新脚本:
$ rustup update
若要卸载 Rust 和 rustup,请在 shell 中运行下面的卸载脚本:
$ rustup self uninstall
本地文档
安装 Rust 时也会附带一份文档的本地副本,供你离线阅读。运行 rustup doc 即可在浏览器中打开本地文档。
任何时候,如果标准库提供了某个类型或函数,而你不确定它是做什么的或该如何使用,请查阅应用程序接口(application programming interface,API)文档!
文本编辑器和集成开发环境(Integrated Development Environments, IDE)
本书不假设你使用什么工具来编写 Rust 代码。几乎任何文本编辑器都能胜任!不过,许多文本编辑器和集成开发环境(IDE)都内置了对 Rust 的支持。你总是可以在 Rust 官网的工具页面找到一个相对较新的常见编辑器和 IDE 列表。
离线使用本书
在一些示例中,我们会使用标准库之外的 Rust 包。要运行这些示例,你需要保持网络连接,或者提前下载好这些依赖。要预先下载依赖,可以运行以下命令。(稍后我们会详细解释 cargo 是什么,以及这些命令分别有什么作用。)
$ cargo new get-dependencies
$ cd get-dependencies
$ cargo add rand@0.8.5 trpl@0.2.0
这会把这些包下载并缓存起来,因此之后你就不需要再次下载它们了。运行完这些命令后,你无需保留 get-dependencies 文件夹。只要你执行过这些命令,在本书后续所有的 cargo 命令中,都可以使用 --offline 参数来使用这些已缓存的版本,而不必尝试联网。