qmk / qmk_configurator

The QMK Configurator
http://config.qmk.fm
691 stars 344 forks source link

[Bug] crkbd layout cannot build? #1113

Closed ethanbond closed 2 years ago

ethanbond commented 2 years ago

Describe the Bug

I built a layout from the crkbd/r2g starter and something is preventing it from compiling. Logs and downloaded keymap.json contents are below. Any help would be immensely appreciated!

Logs

# Corne R2G

![r2g](https://cdn.shopify.com/s/files/1/0582/0242/3501/products/HelidoxCorneR2GPCB_1800x1800.png)

An Eddition of the popular CRKBD featuring a full smd assembly

Keyboard Maintainer: [e11i0t23](https://github.com/e11i0t23/), [Mechboards UK](https://mechboards.co.uk)  
Hardware Supported: CRKBD R2G PCB   
Hardware Availability: [Mechboards UK](https://mechboards.co.uk/products/helidox-corne-kit?variant=40391708213453)  

Make example for this keyboard (after setting up your build environment):

make crkbd/r2g:mb_via

Flash example for this keyboard:  
qmk flash -kb crkbd/r2g -km mb_via

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## Bootloader

These PCBs have a reset on the underside of the PCB next to the TRRS jack to enter in to the bootloader.

Additionally, if you hold down the "Q" or "P" buttons when plugging in that half of the keyboard (per the default QWERTY layout), this will jump to the bootloader and reset the EEPROM (persistent storage).  

Loaded 8 layers and 336 keycodes. Defined 1 Any key keycodes
* Sending crkbd/r2g:crkbd_r2g_layout_split_3x6_3_mine with LAYOUT_split_3x6_3
* Received job_id: 6aeaa6c9-0735-4985-a86c-fbcb2f7fac8b
* Running . . .
* Finished:
Ψ Compiling keymap with make -s --jobs=1 -r -R -f builddefs/build_keyboard.mk KEYBOARD=crkbd/r2g KEYMAP=crkbd_r2g_layout_split_3x6_3_mine KEYBOARD_FILESAFE=crkbd_r2g TARGET=crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine KEYBOARD_OUTPUT=.build/obj_crkbd_r2g KEYMAP_OUTPUT=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine MAIN_KEYMAP_PATH_1=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine MAIN_KEYMAP_PATH_2=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine MAIN_KEYMAP_PATH_3=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine MAIN_KEYMAP_PATH_4=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine MAIN_KEYMAP_PATH_5=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine KEYMAP_C=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine/src/keymap.c KEYMAP_PATH=.build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine/src VERBOSE=false COLOR=true SILENT=false QMK_BIN="qmk"

avr-gcc (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Generating: .build/obj_crkbd_r2g/src/info_config.h                                                  
Generating: .build/obj_crkbd_r2g/src/default_keyboard.h                                             
Generating: .build/obj_crkbd_r2g/src/layouts.h                                                      
Compiling: keyboards/crkbd/crkbd.c                                                                  
Compiling: keyboards/crkbd/r2g/r2g.c                                                                
Compiling: .build/obj_crkbd_r2g_crkbd_r2g_layout_split_3x6_3_mine/src/keymap.c                     In file included from ,
                 from :
’ undeclared here (not in a function)
  O(2), KC_LGUI),

’
     { L20, L21, L22, L23, L24, L25 }, \

’
  O(2), KC_LGUI),

’
  O(2), KC_LGUI),

 
 | 
 | 
 | 
make: *** ap.o] Error 1

Keymap.json contents

{
  "version": 1,
  "notes": "",
  "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n",
  "keyboard": "crkbd/r2g",
  "keymap": "crkbd_r2g_layout_split_3x6_3_mine",
  "layout": "LAYOUT_split_3x6_3",
  "layers": [
    [
      "KC_TAB",
      "KC_Q",
      "LT(8,KC_W)",
      "KC_E",
      "KC_R",
      "KC_T",
      "KC_Y",
      "KC_U",
      "KC_I",
      "KC_O",
      "KC_P",
      "KC_BSPC",
      "LCTL_T(KC_ESC)",
      "LSFT_T(KC_A)",
      "LT(7,KC_S)",
      "LT(5,KC_D)",
      "LT(4,KC_F)",
      "KC_G",
      "KC_H",
      "KC_J",
      "KC_K",
      "KC_L",
      "RSFT_T(KC_SCLN)",
      "KC_QUOT",
      "ANY(LT(0,OSL(layer)))",
      "KC_Z",
      "KC_X",
      "KC_C",
      "KC_V",
      "KC_B",
      "KC_N",
      "KC_M",
      "KC_COMM",
      "KC_DOT",
      "KC_SLSH",
      "KC_ESC",
      "KC_LCTL",
      "KC_BSPC",
      "KC_SPC",
      "KC_ENT",
      "MO(2)",
      "KC_LGUI"
    ],
    [],
    [
      "KC_TAB",
      "KC_EXLM",
      "KC_AT",
      "KC_HASH",
      "KC_DLR",
      "KC_PERC",
      "KC_CIRC",
      "KC_AMPR",
      "KC_ASTR",
      "KC_LPRN",
      "KC_RPRN",
      "KC_NO",
      "TO(0)",
      "KC_1",
      "KC_2",
      "KC_3",
      "KC_4",
      "KC_5",
      "KC_6",
      "KC_7",
      "KC_8",
      "KC_9",
      "KC_0",
      "KC_NO",
      "KC_LSFT",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_UNDS",
      "KC_PMNS",
      "KC_PPLS",
      "KC_PIPE",
      "KC_GT",
      "KC_BSLS",
      "KC_TRNS",
      "KC_TRNS",
      "KC_TRNS",
      "KC_TRNS",
      "KC_TRNS",
      "KC_TRNS"
    ],
    [],
    [
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "MEH(KC_Y)",
      "MEH(KC_U)",
      "MEH(KC_I)",
      "MEH(KC_O)",
      "MEH(KC_P)",
      "KC_NO",
      "TO(0)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "MEH(KC_H)",
      "MEH(KC_J)",
      "MEH(KC_K)",
      "MEH(KC_L)",
      "MEH(KC_SCLN)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "MEH(KC_N)",
      "MEH(KC_M)",
      "MEH(KC_COMM)",
      "MEH(KC_DOT)",
      "MEH(KC_SLSH)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_TRNS",
      "KC_NO"
    ],
    [
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_UP",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "TO(0)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "LALT(KC_LEFT)",
      "KC_LEFT",
      "KC_DOWN",
      "KC_RGHT",
      "LALT(KC_RGHT)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO"
    ],
    [
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_GT",
      "KC_RPRN",
      "KC_RBRC",
      "LSFT(KC_RBRC)",
      "KC_QUOT",
      "KC_NO",
      "TO(0)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_LT",
      "KC_LPRN",
      "KC_LBRC",
      "LSFT(KC_LBRC)",
      "KC_DQUO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO"
    ],
    [
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "LCAG(KC_GRV)",
      "LCAG(KC_UP)",
      "LCAG(KC_F4)",
      "KC_NO",
      "KC_NO",
      "TO(0)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "LCAG(KC_LEFT)",
      "LCAG(KC_DOWN)",
      "LCAG(KC_RGHT)",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "KC_NO",
      "LCAG(KC_F5)",
      "KC_NO",
      "KC_NO",
      "LCAG(KC_SPC)",
      "LCAG(KC_ENT)",
      "KC_NO",
      "KC_NO"
    ]
  ],
  "author": ""
}

Additional Context?

No response

ethanbond commented 2 years ago

Oh woops! I must've mashed my keys somewhere and didn't realize I had the crazy ANY(LT(0,OSL(layer))) on layer 0 until pasting in the JSON here! Thank you all for the fantastic tooling :)