myfreax

Javascript开发者的Rust教程安装rust工具链

你编写的JavaScript比任何其他语言都多。并且很喜欢它,随着你对Javascript/Node.JS的熟悉,你应该知道Javascript/Node.JS并适合密集计算型的应用

4 min read
By myfreax
Javascript开发者的Rust教程安装rust工具链

你编写的JavaScript比任何其他语言都多。并且很喜欢它,随着你对Javascript/Node.JS的熟悉,你应该知道Javascript/Node.JS并适合密集计算型的应用。

Javascript/Node.JS有着不错的运行速度很快,但对于重计算的任务时它并没有那么快。Javascript/Node.JS写起来很容易,但很容易搞砸。大型项目很快就会变得笨拙。

TypeScript有助于扩展JavaScript,但它增加了自身的复杂性,并且仍然没有使它变得更快。服务器端JavaScript也依赖于node.js。如果您想分发独立的东西,且要非常小,很难找到合适的方案。

这时当您开始扩展JavaScript最擅长的领域时,转向另一种语言会很有帮助。可帮助克服Javascript本身问题。

为什么选择Rust

您可以使用C、C++、C#、Go、Java、Kotlin、Haskell或其他一百种语言。众所周知,即使是系统程序员也很难接触到Rust。

您已经拥有JavaScript,这是一种高级语言,足以在任何地方运行几乎所有东西。如果你正在学习一门新语言,你不妨走个极端,选择一个不妥协的方式。

此外,Rust对WebAssembly的工具和支持比其他语言都要好。您可以将CPU繁重的 JavaScript逻辑重写为Rust并将其作为WebAssembly运行。

这基本上使您成为Javascript中的佼佼者。使用JavaScript和Rust,没有什么是您无法处理的,在计算密集型应用中使用Rust扩展Javascript,对于IO密集型直接使用Javascript即可。

使用rust安装rustup

nvm是不可或缺的工具,nvm管理在同一系统上的node.js版本。让你在版本之间的无缝安装和切换。

在Rust也有类似的工具,它就是rustup。Rustup管理您的Rust安装以及附加的目标平台,如 WebAssembly。还有核心工具,如cargo是Rust的npmclippy是Rust的eslintrustfmt是Rust的 prettier

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh #安装rust/rustup

输出如下

  /home/myfreax/.rustup

1) Proceed with installation (default)
2) Customize installation
3) Cancel installation

安装过程中将询问你rust安装位置,选择1默认的位置。除非你对rust很熟悉,我们不建议更改rust的安装位置。避免不必要的问题。

安装后rust,你可在没有任何子命令的情况下运行rustup,并探索它所提供的功能。以下是常用的rustup子命令说明。

rustup show将显示当前安装的内容。rustup completions将帮助您为rustupcargo等工具安装自动命令的自动补全/自动完成。

rustup component允许您添加其他组件。rustup update会将您更新rust到最新版本。rustup install stable|nightly|1.57将安装特定版本或最新的稳定/夜间版本。

默认情况下,rustup将安装最新版本的rustcargo。安装完成后你可以运行以下命令验证rust的版本。

$ rustc --version
rustc 1.61.0 (fe5b13d68 2022-05-18)

$ cargo --version
rustc 1.61.0 (fe5b13d68 2022-05-18)

如果它不起作用,您可能需要重新启动当前的shell会话以更新您的PATH环境变量。

rust-toolchain.toml

用rustup指定你的工具链很简单。随着您的深入,您可能会遇到不同项目需要不同工具链或Rust版本的配置。

这就是rust-toolchain.toml发挥作用的地方。cargo在此处指定项目所需的工具链、目标平台和支持的工具,以便rustup可以自动工作。

[toolchain]
channel = "1.56.0"
components = [ "rustfmt", "clippy" ]

结论

至此,你已经完成了rust的安装,了解rust的编译器rustc,rust的工具链配置文件。rust的格式化工具rustfmt,rustup是rust版本管理工具。无缝切换rust版本。clippy是rust代码质量检查工具。