aboutsummaryrefslogtreecommitdiff
path: root/docs/faq_build.md
diff options
context:
space:
mode:
authorBen Hilburn <bhilburn@gmail.com>2018-02-19 14:09:05 -0500
committerJack Humbert <jack.humb@gmail.com>2018-02-19 14:09:05 -0500
commit8df2ee4ec3758b45fe762fd8fc1840e04c8f5f73 (patch)
tree71e4bfc87a52bc64fc32067d68254c1a1772e8dc /docs/faq_build.md
parent0e92d99cdc2da358f14e6faf421b71edd0ef7f6c (diff)
downloadqmk_firmware-8df2ee4ec3758b45fe762fd8fc1840e04c8f5f73.tar.gz
qmk_firmware-8df2ee4ec3758b45fe762fd8fc1840e04c8f5f73.zip
Minor updates to docs (#2406)
* [docs/] Cleaning up some language to make it more clear. * [docs/] Adding instructions for installing deps on RH / Fedora.
Diffstat (limited to 'docs/faq_build.md')
-rw-r--r--docs/faq_build.md45
1 files changed, 22 insertions, 23 deletions
diff --git a/docs/faq_build.md b/docs/faq_build.md
index d38ca69d0..ff409f9c6 100644
--- a/docs/faq_build.md
+++ b/docs/faq_build.md
@@ -1,40 +1,25 @@
1# Frequently Asked Build Questions 1# Frequently Asked Build Questions
2 2
3This page covers questions about building QMK. If you have not yet you should read the [Build Environment Setup](getting_started_build_tools.md) and [Make Instructions](getting_started_make_guide.md) guides. 3This page covers questions about building QMK. If you haven't yet done so, you should read the [Build Environment Setup](getting_started_build_tools.md) and [Make Instructions](getting_started_make_guide.md) guides.
4 4
5## Can't Program on Linux 5## Can't Program on Linux
6You will need proper permission to operate a device. For Linux users see udev rules below. Easy way is to use `sudo` command, if you are not familiar with this command check its manual with `man sudo` or this page on line. 6You will need proper permissions to operate a device. For Linux users, see the instructions regarding `udev` rules, below. If you have issues with `udev`, a work-around is to use the `sudo` command. If you are not familiar with this command, check its manual with `man sudo` or [see this webpage](https://linux.die.net/man/8/sudo).
7 7
8In short when your controller is ATMega32u4, 8An example of using `sudo`, when your controller is ATMega32u4:
9 9
10 $ sudo dfu-programmer atmega32u4 erase --force 10 $ sudo dfu-programmer atmega32u4 erase --force
11 $ sudo dfu-programmer atmega32u4 flash your.hex 11 $ sudo dfu-programmer atmega32u4 flash your.hex
12 $ sudo dfu-programmer atmega32u4 reset 12 $ sudo dfu-programmer atmega32u4 reset
13 13
14or just 14or just:
15 15
16 $ sudo make <keyboard>:<keymap>:dfu 16 $ sudo make <keyboard>:<keymap>:dfu
17 17
18But to run `make` with root privilege is not good idea. Use former method if possible. 18Note that running `make` with `sudo` is generally *not* a good idea, and you should use one of the former methods, if possible.
19
20## WINAVR is Obsolete
21It is no longer recommended and may cause some problem.
22See [TMK Issue #99](https://github.com/tmk/tmk_keyboard/issues/99).
23
24## USB VID and PID
25You can use any ID you want with editing `config.h`. Using any presumably unused ID will be no problem in fact except for very low chance of collision with other product.
26
27Most boards in QMK use `0xFEED` as the vendor ID. You should look through other keyboards to make sure you pick a unique Product ID.
28
29Also see this.
30https://github.com/tmk/tmk_keyboard/issues/150
31
32You can buy a really unique VID:PID here. I don't think you need this for personal use.
33- http://www.obdev.at/products/vusb/license.html
34- http://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=92&option=com_phpshop&Itemid=1
35 19
36## Linux `udev` Rules 20## Linux `udev` Rules
37On Linux you need proper privilege to access device file of MCU, you'll have to use `sudo` when flashing firmware. You can circumvent this with placing these files in `/etc/udev/rules.d/`. 21On Linux, you'll need proper privileges to access the MCU. You can either use
22`sudo` when flashing firmware, or place these files in `/etc/udev/rules.d/`.
38 23
39**/etc/udev/rules.d/50-atmel-dfu.rules:** 24**/etc/udev/rules.d/50-atmel-dfu.rules:**
40``` 25```
@@ -52,6 +37,21 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", MODE:="066
52SUBSYSTEMS=="usb", ATTRS{idVendor}=="feed", MODE:="0666" 37SUBSYSTEMS=="usb", ATTRS{idVendor}=="feed", MODE:="0666"
53``` 38```
54 39
40## WINAVR is Obsolete
41It is no longer recommended and may cause some problem.
42See [TMK Issue #99](https://github.com/tmk/tmk_keyboard/issues/99).
43
44## USB VID and PID
45You can use any ID you want with editing `config.h`. Using any presumably unused ID will be no problem in fact except for very low chance of collision with other product.
46
47Most boards in QMK use `0xFEED` as the vendor ID. You should look through other keyboards to make sure you pick a unique Product ID.
48
49Also see this.
50https://github.com/tmk/tmk_keyboard/issues/150
51
52You can buy a really unique VID:PID here. I don't think you need this for personal use.
53- http://www.obdev.at/products/vusb/license.html
54- http://www.mcselec.com/index.php?page=shop.product_details&flypage=shop.flypage&product_id=92&option=com_phpshop&Itemid=1
55 55
56## Cortex: `cstddef: No such file or directory` 56## Cortex: `cstddef: No such file or directory`
57GCC 4.8 of Ubuntu 14.04 had this problem and had to update to 4.9 with this PPA. 57GCC 4.8 of Ubuntu 14.04 had this problem and had to update to 4.9 with this PPA.
@@ -61,7 +61,6 @@ https://github.com/tmk/tmk_keyboard/issues/212
61https://github.com/tmk/tmk_keyboard/wiki/mbed-cortex-porting#compile-error-cstddef 61https://github.com/tmk/tmk_keyboard/wiki/mbed-cortex-porting#compile-error-cstddef
62https://developer.mbed.org/forum/mbed/topic/5205/ 62https://developer.mbed.org/forum/mbed/topic/5205/
63 63
64
65## `clock_prescale_set` and `clock_div_1` Not Available 64## `clock_prescale_set` and `clock_div_1` Not Available
66Your toolchain is too old to support the MCU. For example WinAVR 20100110 doesn't support ATMega32u2. 65Your toolchain is too old to support the MCU. For example WinAVR 20100110 doesn't support ATMega32u2.
67 66