Введение / Зачем это нужно
Nim — это статически типизированный компилируемый язык программирования, который сочетает в себе выразительность Python с производительностью C. Он идеально подходит для системного программирования, веб-серверов, игр и встраиваемых систем.
После выполнения этого гайда вы сможете:
- Компилировать и запускать Nim-программы из терминала.
- Использовать менеджер пакетов
nimble. - Разрабатывать в VS Code с подсветкой синтаксиса и автодополнением.
- Создавать и управлять проектами на Nim.
Гайд рассчитан на новичков в Nim, но требует базового знакомства с терминалом Linux.
Требования / Подготовка
Перед началом убедитесь, что:
- У вас есть доступ к терминалу Linux (Ubuntu, Fedora, Debian, Arch или другая).
- Установлены базовые инструменты сборки:
- Ubuntu/Debian:
sudo apt update && sudo apt install build-essential curl - Fedora:
sudo dnf groupinstall "Development Tools" && sudo dnf install curl - Arch:
sudo pacman -S base-devel curl
- Ubuntu/Debian:
- У вас есть права на запись в домашний каталог (
~).
Если вы планируете использовать VS Code, скачайте его с официального сайта или установите через менеджер пакетов вашего дистрибутива.
Шаг 1: Установка скрипта choosenim
Choosenim — это официальный скрипт установки и управления версиями Nim. Он загружает компилятор, настраивает пути и позволяет легко переключаться между версиями.
- Откройте терминал.
- Выполните команду для загрузки и запуска скрипта:
curl https://nim-lang.org/choosenim/init.sh -sSf | sh
- Скрипт предложит установить choosenim в
~/.choosenim. НажмитеEnterдля подтверждения или введитеy. - После завершения вы увидите сообщение об успешной установке.
⚠️ Важно: Если curl не установлен, сначала установите его:
sudo apt install curl(Ubuntu/Debian) илиsudo dnf install curl(Fedora).
Шаг 2: Установка компилятора Nim
Теперь, когда choosenim установлен, используйте его для установки последней стабильной версии Nim:
~/.choosenim/bin/choosenim stable
Команда:
- Скачивает бинарные файлы Nim (компилятор, стандартную библиотеку).
- Устанавливает их в
~/.nimble. - Автоматически настраивает переменные окружения.
Процесс может занять несколько минут в зависимости от скорости интернета.
После завершения проверьте версию:
nim --version
Вывод должен быть примерно таким:
Nim Compiler Version 2.0.0 [Linux: amd64]
Compiled with '--cc:gcc' for Linux/amd64
Шаг 3: Настройка переменной окружения PATH
Чтобы команды nim и nimble работали из любого места, нужно添加 путь ~/.nimble/bin в переменную PATH.
- Определите, какую оболочку вы используете:
- Bash: файл
~/.bashrc - Zsh: файл
~/.zshrc - Fish: файл
~/.config/fish/config.fish
- Bash: файл
- Откройте соответствующий файл в текстовом редакторе (например,
nano ~/.bashrc). - Добавьте в конец файла строку:
export PATH="$HOME/.nimble/bin:$PATH"
- Сохраните файл (
Ctrl+Oв nano, затемEnter) и закройте редактор (Ctrl+X). - Примените изменения:
- Для Bash/Zsh:
source ~/.bashrcилиsource ~/.zshrc - Для Fish:
source ~/.config/fish/config.fish
- Для Bash/Zsh:
- Проверьте, что команды доступны:
which nim
which nimble
Обе команды должны вернуть путь, начинающийся с /home/ваш_пользователь/.nimble/bin/.
Шаг 4: Установка редактора кода и расширения
Хотя Nim можно писать в любом текстовом редакторе, VS Code с расширением предоставляет лучший опыт: подсветку синтаксиса, автодополнение, отладку.
- Установите VS Code (если ещё не установлен):
- Ubuntu/Debian:
sudo apt install code(через репозиторий Microsoft) или загрузите.debс сайта. - Fedora:
sudo dnf install code - Arch:
sudo pacman -S code
- Ubuntu/Debian:
- Установите расширение для Nim:
- Запустите VS Code.
- Перейдите в раздел Extensions (иконка квадратов слева).
- В поиске введите
nim. - Выберите официальное расширение Nim (издатель:
nim-lang). - Нажмите Install.
- Проверьте работу расширения:
- Создайте файл с расширением
.nim. - Начните вводить код — должно появляться автодополнение.
- Создайте файл с расширением
💡 Совет: Для более продвинутой разработки также рассмотрите расширение Nim Language Server (если доступно) или настройте
nimlspвручную.
Шаг 5: Создание и запуск тестового проекта
Теперь создадим простое приложение, чтобы убедиться, что всё работает.
- Создайте каталог для проекта и перейдите в него:
mkdir ~/nim_projects
cd ~/nim_projects
- Создайте файл
hello.nim:
cat > hello.nim << 'EOF'
echo "Привет, мир!"
EOF
- Скомпилируйте и запустите:
nim c -r hello.nim
Команда nim c компилирует программу в исполняемый файл, а -r сразу запускает его.
Вывод должен быть:
Привет, мир!
- Также можно скомпилировать в оптимизированный release-режим:
nim c -d:release hello.nim
./hello
Шаг 6: Установка менеджера пакетов Nimble
Nimble — это менеджер пакетов для Nim, аналогичный npm для Node.js или pip для Python. Он обычно устанавливается автоматически вместе с Nim, но проверим:
- Проверьте версию:
nimble --version
Если команда не найдена, установите вручную:
git clone https://github.com/nim-lang/nimble.git
cd nimble
git checkout v0.14.0 # или последняя версия
nim c -d:release src/nimble.nim
sudo mv bin/nimble /usr/local/bin/
- Обновите список пакетов:
nimble refresh
- Попробуйте установить пакет, например,
json:
nimble install json
Проверка результата
Выполните следующие команды и убедитесь, что они выводят информацию без ошибок:
nim --version
nimble --version
nim c -r hello.nim # из каталога с тестовым проектом
code --version # если установлен VS Code
Также откройте VS Code, создайте файл test.nim и проверьте, работает ли подсветка синтаксиса и автодополнение.
Возможные проблемы
1. Ошибка nim: command not found после установки
Причина: Путь ~/.nimble/bin не добавлен в PATH.
Решение: Выполните шаг 3 заново, убедившись, что строка export PATH="$HOME/.nimble/bin:$PATH" добавлена в правильный конфигурационный файл оболочки и что вы его перезагрузили (source ~/.bashrc).
2. Choosenim не может скачать Nim (ошибки SSL или сети)
Причина: Проблемы с сетью или устаревшие сертификаты. Решение:
- Убедитесь, что у вас есть интернет.
- Обновите
ca-certificates:sudo apt update && sudo apt install ca-certificates(Ubuntu/Debian). - Временно отключите проверку SSL (не рекомендуется):
export CHOOSENIM_NO_VERIFY=1и запустите choosenim снова.
3. Ошибки компиляции из-за недостатка памяти
Причина: Nim требует достаточно оперативной памяти для компиляции больших проектов. Решение: Увеличьте размер swap-файла или закройте другие приложения. Для небольших проектов это редко возникает.
4. VS Code не подсвечивает синтаксис Nim
Причина: Расширение не активировано для текущего файла. Решение:
- Убедитесь, что файл имеет расширение
.nim. - В правом нижнем углу VS Code выберите язык
Nim(если предложено). - Перезапустите VS Code.
5. Nimble не может найти пакет
Причина: Список пакетов не обновлён или сетевые ограничения.
Решение: Выполните nimble refresh и повторите. Если пакет не в официальном репозитории, возможно, его нужно установить из GitHub.
6. Ошибка cannot open file: std/... при компиляции
Причина: Установка Nim прошла некорректно или повреждена. Решение: Переустановите Nim через choosenim:
choosenim uninstall
choosenim stable
Убедитесь, что в ~/.nimble нет старых файлов, которые могут конфликтовать.
Среда готова! Теперь вы можете изучать язык Nim, создавать проекты и использовать богатую экосистему пакетов через Nimble. Для дальнейшего изучения обратитесь к официальному туториалу Nim.