aboutsummaryrefslogtreecommitdiff
path: root/docs/getting_started_build_tools.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/getting_started_build_tools.md')
-rw-r--r--docs/getting_started_build_tools.md35
1 files changed, 20 insertions, 15 deletions
diff --git a/docs/getting_started_build_tools.md b/docs/getting_started_build_tools.md
index c1e02d4e0..375e9d108 100644
--- a/docs/getting_started_build_tools.md
+++ b/docs/getting_started_build_tools.md
@@ -8,7 +8,7 @@ Note: If it is your first time here, Check out the "Complete Newbs guide" instea
8 8
9## Linux 9## Linux
10 10
11To ensure you are always up to date, you can just run `sudo util/install_dependencies.sh`. That should always install all the dependencies needed. **This will run `apt-get upgrade`.** 11To ensure you are always up to date, you can just run `sudo util/qmk_install.sh`. That should always install all the dependencies needed. **This will run `apt-get upgrade`.**
12 12
13You can also install things manually, but this documentation might not be always up to date with all requirements. 13You can also install things manually, but this documentation might not be always up to date with all requirements.
14 14
@@ -57,11 +57,13 @@ If you're using [homebrew,](http://brew.sh/) you can use the following commands:
57 brew tap PX4/homebrew-px4 57 brew tap PX4/homebrew-px4
58 brew update 58 brew update
59 brew install avr-gcc@7 59 brew install avr-gcc@7
60 brew link --force avr-gcc@7
60 brew install dfu-programmer 61 brew install dfu-programmer
62 brew install dfu-util
61 brew install gcc-arm-none-eabi 63 brew install gcc-arm-none-eabi
62 brew install avrdude 64 brew install avrdude
63 65
64This is the recommended method. If you don't have homebrew, [install it!](http://brew.sh/) It's very much worth it for anyone who works in the command line. Note that the `make` and `make install` portion during the homebrew installation of avr-libc can take over 20 minutes and exhibit high CPU usage. 66This is the recommended method. If you don't have homebrew, [install it!](http://brew.sh/) It's very much worth it for anyone who works in the command line. Note that the `make` and `make install` portion during the homebrew installation of `avr-gcc@7` can take over 20 minutes and exhibit high CPU usage.
65 67
66## Windows with msys2 (recommended) 68## Windows with msys2 (recommended)
67 69
@@ -69,9 +71,9 @@ The best environment to use, for Windows Vista through any later version (tested
69 71
70* Install msys2 by downloading it and following the instructions here: http://www.msys2.org 72* Install msys2 by downloading it and following the instructions here: http://www.msys2.org
71* Open the ``MSYS2 MingGW 64-bit`` shortcut 73* Open the ``MSYS2 MingGW 64-bit`` shortcut
72* Navigate to your qmk checkout. For example, if it's in the root of your c drive: 74* Navigate to your QMK repository. For example, if it's in the root of your c drive:
73 * `$ cd /c/qmk_firmware` 75 * `$ cd /c/qmk_firmware`
74* Run `util/msys2_install.sh` and follow the prompts 76* Run `util/qmk_install.sh` and follow the prompts
75 77
76## Windows 10 (deprecated) 78## Windows 10 (deprecated)
77These are the old instructions for Windows 10. We recommend you use [MSYS2 as outlined above](#windows-with-msys2-recommended). 79These are the old instructions for Windows 10. We recommend you use [MSYS2 as outlined above](#windows-with-msys2-recommended).
@@ -121,24 +123,27 @@ If you have trouble and want to ask for help, it is useful to generate a *Win_Ch
121 123
122## Docker 124## Docker
123 125
124If this is a bit complex for you, Docker might be the turn-key solution you need. After installing [Docker](https://www.docker.com/products/docker), run the following command at the root of the QMK folder to build a keyboard/keymap: 126If this is a bit complex for you, Docker might be the turn-key solution you need. After installing [Docker CE](https://docs.docker.com/install/#supported-platforms), run the following command from the `qmk_firmware` directory to build a keyboard/keymap:
125
126```bash 127```bash
127# You'll run this every time you want to build a keymap 128util/docker_build.sh keyboard:keymap
128# modify the keymap and keyboard assignment to compile what you want 129# For example: util/docker_build.sh ergodox_ez:steno
129# defaults are ergodox/default
130
131docker run -e keymap=gwen -e keyboard=ergodox_ez --rm -v $('pwd'):/qmk:rw edasque/qmk_firmware
132``` 130```
131This will compile the targeted keyboard/keymap and leave the resulting `.hex` or `.bin` file in the QMK directory for you to flash. If `:keymap` is omitted, the `default` keymap is used. Note that the parameter format is the same as when building with `make`.
133 132
134On Windows Docker seems to have issues with the VOLUME tag in Dockerfile, and `$('pwd')` won't print a Windows compliant path; use full path instead, like this: 133You can also start the script without any parameters, in which case it will ask you to input the build parameters one by one, which you may find easier to use:
135
136```bash 134```bash
137docker run -e keymap=default -e keyboard=ergodox_ez --rm -v D:/Users/Sacapuces/Documents/Repositories/qmk:/qmk:rw edasque/qmk_firmware 135util/docker_build.sh
136# Reads parameters as input (leave blank for defaults)
137```
138 138
139There is also support for building _and_ flashing the keyboard straight from Docker by specifying the `target` as well:
140```bash
141util/docker_build.sh keyboard:keymap:target
142# For example: util/docker_build.sh planck/rev6:default:dfu-util
139``` 143```
144If you're on Linux, this should work out of the box. On Windows and macOS, it requires [Docker Machine](http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos/) to be running. This is tedious to set up, so it's not recommended; use QMK Toolbox instead.
140 145
141This will compile the targeted keyboard/keymap and leave it in your QMK directory for you to flash. 146!> Docker for Windows requires [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and **Windows 10 Home**.
142 147
143## Vagrant 148## Vagrant
144If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [vagrant guide](getting_started_vagrant.md). 149If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [vagrant guide](getting_started_vagrant.md).