Создание виртуальных сред Rust с помощью Conda в Linux
Как вы, возможно, уже знаете, дистрибутив Anaconda поставляется с пакетом командной строки и менеджером виртуальной среды под названием Conda. Несмотря на то, что он в основном разработан для Python, на самом деле он не зависит от языка и не привязан к какому-либо конкретному языку программирования. Используя Conda, мы можем установить множество языков программирования в разных средах. Мы уже показали вам, как создать среду NodeJS с помощью Conda. Сегодня мы увидим, как создавать виртуальные среды Rust с помощью Conda в Linux.
1. Что такое ржавчина?
Rust или rust-lang — это кроссплатформенный, быстрый, современный язык программирования систем с открытым исходным кодом.
Он оснащен множеством функций, таких как абстракции с нулевой стоимостью, семантика перемещения, гарантированная безопасность памяти, потоки без гонок за данными, дженерики на основе признаков, сопоставление шаблонов, вывод типов, минимальное время выполнения, эффективные привязки C и т. д.
Популярные компании и организации, занимающиеся разработкой программного обеспечения, такие как Canonical, Dropbox, Mozilla и т. д., активно участвуют в разработке Rust.
2. Создайте виртуальную среду Rust с помощью Conda в Linux
Установщик набора инструментов Rust под названием rustup — это официально рекомендуемый сценарий для установки Rust в Linux. Однако это не единственный путь. Мы также можем использовать менеджер пакетов Conda для установки языка программирования Rust и управления им.
Чтобы создать новую среду Rust с помощью conda и установить необходимое программное обеспечение для этой среды, запустите:
conda create -c conda-forge -n rustenv rust
Приведенная выше команда создаст новую виртуальную среду с именем "rustenv" и установит все необходимые пакеты для этой среды из канала conda-forge.
Пример вывода:
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
Создание виртуальных сред Rust с помощью Conda
Обратите внимание, что вы также можете установить пакеты 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)
Проверьте версию Rusc и Cargo в Linux
Кажется, все в порядке. Начните использовать эту среду для запуска, отладки и тестирования ваших программ на Rust.
2.1. Добавьте груз в свой ` PATH
Если вы установили Rust с помощью Rustup, все автоматизировано.
Скрипт установкиrustup загружает и устанавливает официальный компилятор языка программирования Rust и его менеджер пакетов с именем Cargo, а также добавляет cargo, rustc. >, rustup и другие команды в каталог bin Cargo, расположенный по адресу ~/.cargo/bin. И, наконец, он добавляет каталог bin Cargo в переменную среды PATH, изменяя файл profile , расположенный по адресу ~/.profile.
Но в этом случае вам придется самостоятельно добавить каталог контейнеров Cargo в свой путь `. Для этого отредактируйте файл профиля , расположенный по адресу ~/.bashrc или ~/.profile
или любой другой использовать:
nano ~/.bashrc
Добавьте в конце следующую строку:
export PATH=/home/sk/.cargo/bin:$PATH
Добавьте каталог контейнеров Cargo в файл вашего профиля.
Нажмите CTRL+O
, а затем CTRL+X
, чтобы сохранить файл и выйти.
Выполните следующую команду, чтобы изменения вступили в силу немедленно:
source ~/.bashrc
Замените ~/.bashrc
фактическим файлом профиля.
2.2. Деактивировать виртуальную среду Rust
Когда вы закончите, деактивируйте виртуальную среду Rust с помощью команды:
conda deactivate
Чтобы снова активировать виртуальную среду Rust, запустите:
$конда активировать
2.3. Удалить виртуальную среду Rust
Убедитесь, что вы деактивировали среду:
conda deactivate
Затем удалите среду ржавчины с помощью команды:
conda env remove -n rustenv
Если вы не знаете точное имя среды, просто перечислите все доступные среды с помощью команды conda info --envs
, которая предоставит вам подробную информацию обо всех средах, а затем удалите правильную среду.
3. Заключение
В этом руководстве мы обсудили, как создавать виртуальные среды Rust с помощью Conda в Linux, как активировать и деактивировать виртуальную среду Rust и, наконец, как удалить среду Rust.
Связанное чтение:
- Создание виртуальных сред Golang с помощью Conda в Linux