在 Linux 中使用 Conda 创建 Rust 虚拟环境

你可能已经知道, 蟒蛇分布 附带一个命令行包和名为的虚拟环境管理器 康达. 尽管它主要是为 Python 开发的,但它实际上与语言无关,并且不依赖于任何特定的编程语言。 使用 Conda,我们可以在多种不同的环境中安装多种编程语言。 我们已经向您展示了如何 使用 Conda 创建 NodeJS 环境. 今天,我们将了解如何在 Linux 中使用 Conda 创建 Rust 虚拟环境。

1. 什么是锈?

或者 锈郎 是一种跨平台、快速、现代且开源的系统编程语言。

它捆绑了许多特性,例如零成本抽象、移动语义、保证内存安全、没有数据竞争的线程、基于特征的泛型、模式匹配、类型推断、最小运行时间和高效的 C 绑定等。

流行的软件技术公司和组织,如 Canonical、Dropbox 和 Mozilla 等,都积极参与了 Rust 的开发。

2. 在 Linux 中使用 Conda 创建 Rust 虚拟环境

Rust 工具链安装程序名为 生锈 是官方推荐的脚本 在 Linux 中安装 Rust. 然而,这不是唯一的方法。 我们也可以使用 Conda 包管理器来安装和管理 Rust 编程语言。

要使用 conda 创建一个新的 Rust 环境并为该环境安装必要的软件,请运行:

$ conda create -c conda-forge -n rustenv rust

上面的命令将创建一个新的虚拟环境,名为 “锈迹斑斑” 并为该环境安装所有必要的软件包 康达锻造 渠道。

样本输出:

Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/sk/anaconda3/envs/rustenv

  added / updated specs:
    - rust


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _libgcc_mutex-0.1          |      conda_forge           3 KB  conda-forge
    _openmp_mutex-4.5          |            1_gnu          22 KB  conda-forge
    binutils_impl_linux-64-2.35.1|       h193b22a_2         9.3 MB  conda-forge
    gcc_impl_linux-64-9.3.0    |      h70c0ae5_18        43.1 MB  conda-forge
    kernel-headers_linux-64-2.6.32|      h77966d4_13         707 KB  conda-forge
    libgcc-devel_linux-64-9.3.0|      h7864c58_18         4.0 MB  conda-forge
    rust-1.50.0                |       h3bf0571_0       169.4 MB  conda-forge
    rust-std-x86_64-unknown-linux-gnu-1.50.0|       hc1431ca_0        37.8 MB  conda-forge
    sysroot_linux-64-2.12      |      h77966d4_13        30.2 MB  conda-forge
    ------------------------------------------------------------
                                           Total:       294.6 MB

The following NEW packages will be INSTALLED:

  _libgcc_mutex      conda-forge/linux-64::_libgcc_mutex-0.1-conda_forge
  _openmp_mutex      conda-forge/linux-64::_openmp_mutex-4.5-1_gnu
  binutils_impl_lin~ conda-forge/linux-64::binutils_impl_linux-64-2.35.1-h193b22a_2
  gcc_impl_linux-64  conda-forge/linux-64::gcc_impl_linux-64-9.3.0-h70c0ae5_18
  kernel-headers_li~ conda-forge/noarch::kernel-headers_linux-64-2.6.32-h77966d4_13
  ld_impl_linux-64   conda-forge/linux-64::ld_impl_linux-64-2.35.1-hea4e1c9_2
  libgcc-devel_linu~ conda-forge/linux-64::libgcc-devel_linux-64-9.3.0-h7864c58_18
  libgcc-ng          conda-forge/linux-64::libgcc-ng-9.3.0-h2828fa1_18
  libgomp            conda-forge/linux-64::libgomp-9.3.0-h2828fa1_18
  libstdcxx-ng       conda-forge/linux-64::libstdcxx-ng-9.3.0-h6de172a_18
  rust               conda-forge/linux-64::rust-1.50.0-h3bf0571_0
  rust-std-x86_64-u~ conda-forge/noarch::rust-std-x86_64-unknown-linux-gnu-1.50.0-hc1431ca_0
  sysroot_linux-64   conda-forge/noarch::sysroot_linux-64-2.12-h77966d4_13

Proceed ([y]/n)? y

Downloading and Extracting Packages
libgcc-devel_linux-6 | 4.0 MB    | ############################## | 100% 
rust-1.50.0          | 169.4 MB  | ############################## | 100% 
rust-std-x86_64-unkn | 37.8 MB   | ############################################################################################# | 100% 
gcc_impl_linux-64-9. | 43.1 MB   | ############################################################################################# | 100% 
_openmp_mutex-4.5    | 22 KB     | ############################################################################################# | 100% 
binutils_impl_linux- | 9.3 MB    | ############################################################################################# | 100% 
_libgcc_mutex-0.1    | 3 KB      | ############################################################################################# | 100% 
kernel-headers_linux | 707 KB    | ############################################################################################# | 100% 
sysroot_linux-64-2.1 | 30.2 MB   | ############################################################################################# | 100% 
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate rustenv
#
# To deactivate an active environment, use
#
#     $ conda deactivate
使用 Conda 创建 Rust 虚拟环境

请注意,您也可以从官方安装 Rust 包 defaults 渠道。 然而, Conda-forge 频道提供比 defaults 渠道。

创建 Rust 环境后,通过列出可用环境来确保它存在:

$ conda info --envs

样本输出:

# conda environments:
#
base                  *  /home/sk/anaconda3
rustenv                  /home/sk/anaconda3/envs/rustenv

是的,一个名为的新 Rust 环境 rustenv 被建造!

让我们使用命令激活这个环境:

$ conda activate rustenv

验证安装的 Rust 版本:

$ rustc --version
rustc 1.50.0 (cb75ad5db 2021-02-10)

检查 Cargo 包管理器版本:

$ cargo --version
cargo 1.50.0 (f04e7fab7 2021-02-04)
在 Linux 中检查 rustc 和 cargo 版本

一切似乎都很好。 开始使用这个环境来运行、调试和测试你的 Rust 程序。

2.1。 将货物添加到您的 $PATH

如果你用 rustup 安装了 Rust,一切都是自动化的。

rustup 安装程序脚本下载并安装 Rust 编程语言的官方编译器,其包管理器名为 货物,并且它添加了 货物, 生锈的, 生锈 和 Cargo 的 bin 目录的其他命令,位于 ~/.cargo/bin. 最后,它通过修改将 Cargo 的 bin 目录添加到您的 PATH 环境变量 轮廓 文件位于 ~/.profile.

但是在这种情况下,您必须自己将 Cargo 的 bin 目录添加到您的 $PATH 中。 为此,请编辑 轮廓 文件位于 ~/.bashrc 或者 ~/.profile 或您使用的任何东西:

$ nano ~/.bashrc

在末尾添加以下行:

export PATH=/home/sk/.cargo/bin:$PATH
将 Cargo 的 bin 目录添加到您的配置文件中将 Cargo 的 bin 目录添加到您的配置文件中

CTRL+O 其次是 CTRL+X 保存文件并退出。

运行以下命令以使更改立即生效:

$ source ~/.bashrc

代替 ~/.bashrc 与您的实际配置文件。

2.2. 停用 Rust 虚拟环境

完成后,使用以下命令停用 Rust 虚拟环境:

$ conda deactivate

要再次激活 Rust 虚拟环境,请运行:

$ conda 激活

2.3. 删除 Rust 虚拟环境

确保您已停用环境:

$ conda deactivate

然后,使用以下命令删除 rust 环境:

$ conda env remove -n rustenv

如果您不知道环境的确切名称,只需使用列出所有可用环境 conda info --envs 命令将为您提供所有环境的详细信息,然后删除正确的环境。

三、结论

在本指南中,我们讨论了如何在 Linux 中使用 Conda 创建 Rust 虚拟环境,如何激活和停用 Rust 虚拟环境以及如何删除 Rust 环境。

相关阅读:

  • 在 Linux 中使用 Conda 创建 Golang 虚拟环境