Поиск по сайту:

Как установить язык программирования 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
  • Основы Нима

Статьи по данной тематике