Данная страница описывает процесс установки окружения для сборки QMK. Эти инструкции относятся к процессорам AVR (таким как atmega32u4).
Примечание: Если вы здесь впервые, ознакомьтесь с Руководством для полных новичков.
Прежде, чем продолжить, убедитесь, что у вас обновлены подмодули (сторонние библиотеки), выполнив make git-submodule
.
Чтобы всегда быть уверенными, что у вас установлены последние версии ПО, можно просто выполнить команду sudo util/qmk_install.sh
. Она должна установить все необходимые зависимости. Это выполнит apt-get upgrade
.
Вы также можете устанавливать все вручную, но в данной документации список требований может не всегда быть актуальным.
Текущие требования представлены ниже, но не все они могут быть необходимы, так как зависят от того, что вы делаете. Также стоит отметить, что в некоторых системах не все зависимости доступны в виде пакетов, или они могут называться по-другому.
build-essential
gcc
unzip
wget
zip
gcc-avr
binutils-avr
avr-libc
dfu-programmer
dfu-util
gcc-arm-none-eabi
binutils-arm-none-eabi
libnewlib-arm-none-eabi
git
Установите все зависимости при помощи вашего любимого менеджера пакетов.
Пример для Debian / Ubuntu:
sudo apt-get update
sudo apt-get install gcc unzip wget zip gcc-avr binutils-avr avr-libc dfu-programmer dfu-util gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi
Пример для Fedora / Red Hat:
sudo dnf install gcc unzip wget zip dfu-util dfu-programmer avr-gcc avr-libc binutils-avr32-linux-gnu arm-none-eabi-gcc-cs arm-none-eabi-binutils-cs arm-none-eabi-newlib
Пример для Arch / Manjaro:
pacman -S base-devel gcc unzip wget zip avr-gcc avr-binutils avr-libc dfu-util arm-none-eabi-gcc arm-none-eabi-binutils arm-none-eabi-newlib git dfu-programmer dfu-util
Если вы используете NixOS, или у вас установлена Nix в Linux или macOS, выполните nix-shell
из корня репозитория, чтобы настроить окружение для сборки.
По умолчанию, это скачает компиляторы для AVR и ARM. Если вам не нужны они оба, отключите avr
или arm
с помощью аргумента, например:
nix-shell --arg arm false
Если вы пользуетесь Homebrew, вы можете использовать следующие команды:
brew tap osx-cross/avr
brew tap PX4/homebrew-px4
brew update
brew install avr-gcc@8
brew link --force avr-gcc@8
brew install dfu-programmer
brew install dfu-util
brew install gcc-arm-none-eabi
brew install avrdude
Данный метод является рекомендуемым. Если у вас нет Homebrew, установите его! Он очень сильно пригодится тем, кто работает с командной строкой. Стоит отметить, что часть с make
и make install
во время установки avr-gcc@8
из Homebrew может занимать более 20 минут и сильно нагружать CPU.
Наилучшим окружение для Windows Vista и всех последующих версий (тестировалось с 7 и 10) является MSYS2.
MSYS2 MingGW 64-bit
ярлык$ cd /c/qmk_firmware
util/qmk_install.sh
и следуйте подсказкамЭто устаревшие инструкции для Windows 10. Мы рекомендуем использовать MSYS2, как сказано выше.
Если у вас Windows 10 с Обновлением для дизайнеров или новее, вы можете собрать прошивку и прошить ей напрямую. До Обновления для дизайнеров было возможно только собрать прошивку. Если у вас его еще нет, или вы не уверены, следуйте этим инструкциям.
В дополнение к Обновлению для дизайнеров вам необходима подсистема Windows для Linux, поэтому установите ее, следуя иснтрукциям здесь. Если у вас уже есть подсистема Windows для Linux из Юбилейного обновления (Anniversary update), рекомендуется ее обновить до 16.04LTS, потому что некоторые клавиатуры не компилируются с набором инструментов из 14.04LTS. Стоит отметить, что вы четко должны понимать, что вы делаете, если выбрали метод sudo do-release-upgrade
.
Если вы уже клонировали репозиторий в файловую систему Windows, вы можете пропустить данную секцию.
Вам нужно клонировать репозиторий в файловую систему Windows при помощи обычного Git для Windows, а не WSL Git. Так что, если вы ещё не установили Git, скачайте и установите его. Затем настройте его. Важно указать свой адрес электронной почты и имя пользователя, особенно если вы планируете вносить свой вклад в проект.
Как только Git будет установлен, откройте командную строку Git Bash и поменяйте директорию на ту, в которую хотите клонировать QMK; обратите внимание, что вы должны использовать косую черту, и что доступ к вашему диску C осуществляется примерно так: /c/path/to/where/you/want/to/go
. Затем выполните git clone --recurse-submodules https://github.com/qmk/qmk_firmware
, это создаст новую папку qmk_firmware
в текущей директории.
Установка инструментов (Toolchain) осуществляется через подсистему Windows для Linux, и процесс полностью автоматизирован. Если вы хотите выполнить установку вручную, то не существует никакой другой инструкции помимо самого скрипта. Однако, вы всегда можете открыть ишью и запросить дополнительную информацию.
qmk_firmware
. Обратите внимание, что пути начинаются с /mnt/
в WSL, так что вы должны написать, например, cd /mnt/c/path/to/qmk_firmware
.util/wsl_install.sh
и следуйте инструкциям на экране.util/wsl_install.sh
еще раз, чтобы установить все последние обновления.Если это немного сложновато для вас, Docker может стать готовым решением, которое вы ищите. После установки Docker CE выполните следующую команду из директории qmk_firmware
, чтобы собрать клавиатуру/раскладку:
util/docker_build.sh keyboard:keymap
# Например: util/docker_build.sh ergodox_ez:steno
Это скомпилирует указанную клавиатуру/раскладку и создаст для вас .hex
или .bin
файл с результатом, готовым к процессу прошивки, в директории QMK. Если опустить :keymap
, будет использована раскладка default
. Заметьте, что формат параметров такой же, как и в случае сборки командой make
.
Вы также можете запустить скрипт без параметров. Тогда он попросит вас ввести поочередно параметры сборки. Возможно, вам это покажется более удобным:
util/docker_build.sh
# Читает параметры из пользовательского ввода (оставьте пустым для значений по умолчанию)
Также имеется поддержка сборки и прошивки клавиатуры прямо из Docker. Для этого укажите еще один параметр target
:
util/docker_build.sh keyboard:keymap:target
# Например: util/docker_build.sh planck/rev6:default:dfu-util
Если вы используете Linux, это должно работать прямо из коробки. На Windows и macOS это требует запуска Docker Machine. Ее довольно утомительно настраивать, поэтому мы не рекомендуем это; используйте вместо этого QMK Toolbox.
!> Docker для Windows требует включения Hyper-V. Это означает, что он не работает на версиях Windows без Hyper-V, например, на Windows 7, Windows 8 и Windows 10 Home.
Если у вас возникли проблемы при сборке прошивки, вы можете попробовать установить инструмент под названием Vagrant. Он сконфигурирует виртуальный компьютер с такими параметрами, которые подходят для сборки прошивки. У OLKB НЕТ файлов такого виртуально компьютера. Подробности о том, как настроить Vagrant, можно найти в Руководстве по Vagrant.