Как установить язык программирования Nim в Linux
В этом руководстве объясняется, как установить язык программирования Nim в Linux. Для тех, кому интересно, Nim — это императивный, мультипарадигмальный и компилируемый язык программирования с открытым исходным кодом, который можно использовать для написания легко читаемого высокопроизводительного кода. Это относительно новый язык программирования, сочетающий в себе успешные концепции таких зрелых языков, как Python, Ada и Modula. Nim поддерживает все основные операционные системы, включая Linux, BSD, macOS и Microsoft Windows.
Установите язык программирования Nim в Linux
Перед установкой Nim убедитесь, что вы выполнили следующие предварительные условия.
Компилятору Nim требуется компилятор C для компиляции кода. Поэтому вам следует установить компиляторы clang или gcc в вашей системе Linux. Перейдите по следующей ссылке, чтобы установить компилятор gcc и другие инструменты разработки в Linux.
- Как установить инструменты разработки в Linux
Nim можно установить несколькими способами. Вот три разных способа установки Nim в Linux.
1. Установите Nim с помощью Choosenim (официально рекомендуется)
Официально рекомендуемый способ установки Nim — использовать Choosenim. Подобно rustup и pyenv, Choosenim представляет собой мультиплексор цепочки инструментов. Это помогает пользователям установить несколько версий компилятора Nim вместе со всеми необходимыми инструментами. Затем вы можете легко переключаться между различными версиями Nim и выбирать любую версию Nim по требованию.
После установки компилятора gcc выполните следующую команду, чтобы установить последнюю стабильную версию Nim с помощью установщика набора инструментов Choosenim.
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
Следуйте инструкциям на экране. Сначала вас спросят, хотите ли вы разрешить Choosenim записывать и отправлять анонимные данные телеметрии. Если вы согласны отправить данные, нажмите «y» и нажмите ENTER. Если вы не хотите, нажмите «n».
choosenim-init: Downloading choosenim-0.6.0_linux_amd64
Prompt: Can choosenim record and send anonymised telemetry data? [y/n]
... Anonymous aggregate user analytics allow us to prioritise
... fixes and features based on how, where and when people use Nim.
... For more details see: https://goo.gl/NzUEPf.
После успешной установки вы увидите следующее сообщение.
Downloading Nim 1.0.6 from nim-lang.org
[##################################################] 100.0% 0kb/s
Extracting nim-1.0.6-linux_x64.tar.xz
Building Nim 1.0.6
Compiler: Already built
Tools: Already built
Installed component 'nim'
Installed component 'nimble'
Installed component 'nimgrep'
Installed component 'nimpretty'
Installed component 'nimsuggest'
Installed component 'testament'
Switched to Nim 1.0.6
choosenim-init: ChooseNim installed in /home/sk/.nimble/bin
choosenim-init: You must now ensure that the Nimble bin dir is in your PATH.
choosenim-init: Place the following line in the ~/.profile or ~/.bashrc file.
choosenim-init: export PATH=/home/sk/.nimble/bin:$PATH
Как видите, nim и другие необходимые компоненты установлены в каталог ~/.nimble/bin. Вы должны убедиться, что каталог bin Nimble добавлен в ваш путь ` PATH. Для этого отредактируйте файл ~/.bashrc или ~/.profile:
nano ~/.bashrc
Или,
nano ~/.profile
Добавьте в него следующую строку:
export PATH=/home/sk/.nimble/bin:$PATH
Замените путь «/home/sk/...» на свой собственный.
Наконец обновите изменения с помощью команды:
source ~/.bashrc
Если вы добавили эту строку в ~/.profile, выполните:
source ~/.profile
Чтобы проверить установленную версию Nim, просто запустите:
nim -v
На момент написания этого руководства последней стабильной версией Nim была 1.0.6.
Nim Compiler Version 1.0.6 [Linux: amd64]
Compiled at 2020-01-23
Copyright (c) 2006-2019 by Andreas Rumpf
active boot switches: -d:release
Перейти на версию Nim для разработки
По умолчанию selectim установит последнюю стабильную версию Nim. Если вы хотите установить версию для разработки, запустите:
choosenim devel
Пример вывода:
Downloading Nim devel from GitHub
[##################################################] 100.0% 0kb/s
Extracting nim-1.1.1-linux_x64.tar.xz
Setting up git repository
Building Nim #devel
Compiler: Already built
Tools: Already built
Switched to Nim #devel
Проверьте версию Nim:
nim -v
Nim Compiler Version 1.1.1 [Linux: amd64]
Compiled at 2020-04-02
Copyright (c) 2006-2020 by Andreas Rumpf
active boot switches: -d:release
Чтобы вернуться к стабильной версии, запустите:
choosenim stable
Switched to Nim 1.0.6
Перечислить доступные версии Nim
Чтобы просмотреть список всех доступных версий Nim, запустите:
choosenim versions
Пример вывода:
Channel: stable
Installed:
* 1.0.6 (latest)
#devel
Available:
1.0.4
1.0.2
1.0.0
0.20.2
0.20.0
0.19.6
0.19.4
0.19.2
0.19.0
0.18.0
0.17.2
0.17.0
0.16.0
Приведенные выше команды показывают список установленных версий Nim и доступных версий Nim.
Установить конкретную версию Nim
Если вам нужна определенная версия Nim для вашего проекта, вы можете установить ее, как показано ниже.
choosenim 1.0.4
Эта команда устанавливает и выбирает версию Nim 1.0.4.
Обновить Нима
Ним можно обновить, как показано ниже.
Ним стабильный:
choosenim update stable
Версия разработки Нима:
choosenim update devel
Обновите конкретную версию Nim:
choosenim update 1.0.6
Чтобы обновить сам Choosenim, запустите:
choosenim update self
Для помощи,
choosenim -h
Пример вывода:
choosenim: The Nim toolchain installer.
Choose a job. Choose a mortgage. Choose life. Choose Nim.
Usage:
choosenim <version/path/channel>
Example:
choosenim 0.16.0
Installs (if necessary) and selects version 0.16.0 of Nim.
choosenim stable
Installs (if necessary) Nim from the stable channel (latest stable release)
and then selects it.
choosenim devel [--latest]
Installs (if necessary) and selects the most recent nightly build of Nim.
The '--latest' flag selects and builds the latest commit in the devel branch
choosenim ~/projects/nim
Selects the specified Nim installation.
choosenim update stable
Updates the version installed on the stable release channel.
choosenim update devel [--latest]
Updates to the most recent nightly build of Nim.
The '--latest' flag updates and builds the latest commit in the devel branch
choosenim versions [--installed]
Lists the available versions of Nim that choosenim has access to.
Channels:
stable
Describes the latest stable release of Nim.
devel
Describes the latest development (or nightly) release of Nim taken from
the devel branch.
Commands:
update <version/channel> Installs the latest release of the specified
version or channel.
show Displays the selected version and channel.
update self Updates choosenim itself.
versions [--installed] Lists available versions of Nim, passing
`--installed` only displays versions that
are installed locally (no network requests).
Options:
-h --help Show this output.
-y --yes Agree to every question.
--version Show version.
--verbose Show low (and higher) priority output.
--debug Show debug (and higher) priority output.
--noColor Don't colorise output.
--choosenimDir:<dir> Specify the directory where toolchains should be
installed. Default: ~/.choosenim.
--nimbleDir:<dir> Specify the Nimble directory where binaries will be
placed. Default: ~/.nimble.
--firstInstall Used by install script.
2. Установите Nim с помощью менеджера пакетов вашего дистрибутива.
Nim упакован для многих популярных дистрибутивов Linux и доступен в официальных репозиториях.
В Arch Linux и его вариантах, таких как Manjaro Linux, выполните следующую команду, чтобы установить Nim:
sudo pacman -S nim
В Debian, Ubuntu и производных:
sudo apt install nim
В Федоре:
sudo dnf install nim
В openSUSE:
sudo zypper install nim
В Void Linux:
xbps-install -S nim
Nim также доступен в виде Snap-пакета. Если в вашем дистрибутиве Linux есть Snapd, установите Nim, как показано ниже.
Последняя стабильная версия:
snap install nim-lang --classic
Последняя версия LTS 1.0.x:
snap install nim-lang-lts-1 --classic
Последняя ночная сборка:
snap install nim-lang-nightly --classic
Обратите внимание, что версия Nim в официальных репозиториях может быть устаревшей. Если вам нужна самая последняя версия, используйте установщик Choosenim, как описано в предыдущем методе.
3. Установите с помощью Docker
Образы Nim Docker, управляемые сообществом, доступны на Docker Hub. Чтобы запустить эти образы, установите Docker в вашей системе Linux.
- Как установить Docker на сервер Ubuntu 18.04 LTS
- Как установить Docker в CentOS
После установки Docker получите последний стабильный образ Nim Docker с помощью команды:
docker pull nimlang/nim
Получить последнюю версию разработки:
docker pull nimlang/nim:devel
Тест языка программирования Nim
Чтобы проверить, успешно ли установлена установка Nim, давайте запустим простую программу с Nim.
Создайте текстовый файл, например ostechnix.nim:
nano ostechnix.nim
Добавьте в него следующую строку:
echo "Welcome To OSTechNix!"
Сохраните и закройте файл.
Скомпилируйте файл с помощью команды:
nim c ostechnix.nim
Пример вывода:
Hint: used config file '/home/sk/.choosenim/toolchains/nim-1.0.6/config/nim.cfg' [Conf]
Hint: system [Processing]
Hint: widestrs [Processing]
Hint: io [Processing]
Hint: ostechnix [Processing]
Hint: gcc -c -w -I/home/sk/.choosenim/toolchains/nim-1.0.6/lib -I/home/sk -o /home/sk/.cache/nim/ostechnix_d/stdlib_io.nim.c.o /home/sk/.cache/nim/ostechnix_d/stdlib_io.nim.c [Exec]
Hint: gcc -c -w -I/home/sk/.choosenim/toolchains/nim-1.0.6/lib -I/home/sk -o /home/sk/.cache/nim/ostechnix_d/stdlib_system.nim.c.o /home/sk/.cache/nim/ostechnix_d/stdlib_system.nim.c [Exec]
Hint: gcc -c -w -I/home/sk/.choosenim/toolchains/nim-1.0.6/lib -I/home/sk -o /home/sk/.cache/nim/ostechnix_d/@mostechnix.nim.c.o /home/sk/.cache/nim/ostechnix_d/@mostechnix.nim.c [Exec]
Hint: [Link]
Hint: operation successful (14483 lines compiled; 1.894 sec total; 16.008MiB peakmem; Debug Build) [SuccessX]
Наконец, запустите программу с помощью команды:
./ostechnix
Пример вывода:
Welcome To OSTechNix!
Альтернативно, скомпилируйте и запустите за один раз, как показано ниже:
nim c -r ostechnix.nim
Пример вывода:
Hint: used config file '/home/sk/.choosenim/toolchains/nim-1.0.6/config/nim.cfg' [Conf]
Hint: system [Processing]
Hint: widestrs [Processing]
Hint: io [Processing]
Hint: ostechnix [Processing]
Hint: [Link]
Hint: operation successful (14483 lines compiled; 0.405 sec total; 20.898MiB peakmem; Debug Build) [SuccessX]
Hint: /home/sk/ostechnix [Exec]
Welcome To OSTechNix!
Чтобы узнать больше об использовании Nim, обратитесь к официальной документации Основы Nim в конце.
Удалить Ним
Если вы установили Nim с помощью Choosenim, просто удалите каталоги установки Nim:
rm -r ~/.nimble/ ~/.choosenim/
Если вы установили его с помощью менеджера пакетов вашего дистрибутива, просто запустите команду удаления. Например, в Debian, Ubuntu, Nim можно удалить с помощью следующей команды:
sudo apt-get purge --auto-remove nim
Надеюсь это поможет.
Ресурсы:
- Веб-сайт Нима
- Репозиторий Nim на GitHub
- выберите репозиторий GitHub
- Основы Нима