Author Topic: Can't seem to compile my firmware  (Read 1995 times)

0 Members and 1 Guest are viewing this topic.

Offline ROFLmonstar

  • Thread Starter
  • Posts: 17
Can't seem to compile my firmware
« on: Sun, 11 January 2015, 07:10:02 »
I'm making a custom numpad and I can't seem to compile my edited GH60 firmware using this guide:
http://deskthority.net/workshop-f7/how-to-build-your-very-own-keyboard-firmware-t7177.html

I've edited everything right, compared with the original, but I still get an error with cygwin64 on Windows 8.1. I can however compile the original Makefile.

Here's a pastebin link with all the info: (The parts I changed, and the error from the compiler.)
http://pastebin.com/2zUs1F53

Sidenote: On line 119, it has an error with 'ESC' being undefined. I fixed it by putting 'KC_ESCAPE', instead, but the same errors appears besides that.

Basically I have the same problem this guy had:
https://geekhack.org/index.php?topic=63467.0
And he fixed it by building it on Linux. I'll look for my old Arch VM, and I'll report back.
I also attached a .rar of the entire library if you want to try for yourself or look a bit deeper.

Thanks for your time. If any other information is needed, please ask.

Edit: Got my Arch VM running, still the same error(s) when trying to build the Makefile...
« Last Edit: Sun, 11 January 2015, 08:06:08 by ROFLmonstar »

Offline abjr

  • Posts: 171
  • Location: Connecticut
    • abjr.org
Re: Can't seem to compile my firmware
« Reply #1 on: Sun, 11 January 2015, 08:37:03 »
Fix your keymap_common.h. You had an extraneous comma and KEYMAP

Code: [Select]
#define KEYMAP( \
    K00, K01, K02, K03, \
    K10, K11, K12, \
    K20, K21, K22, K23, \
    K30, K31, K32, \
    K40, K41, K42 \
) { \
    { KC_##K00, KC_##K01, KC_##K02, KC_##K03 }, \
    { KC_##K10, KC_##K11, KC_##K12, KC_NO}, \
    { KC_##K20, KC_##K21, KC_##K22, KC_##K23 }, \
    { KC_##K30, KC_##K31, KC_##K32, KC_NO }, \
    { KC_##K40, KC_NO, KC_##K41, KC_##K42}  \
}

Also fix your keymap_poker.c. You don't need the leading "KC_". KEYMAP is a macro that expands, so if you put KC_ESC you really wind up with KC_KC_ESC which is not a valid keycode.

Code: [Select]
const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
                   KEYMAP(ESC,KP_SLASH,KP_ASTERISK,KP_MINUS, \
                   KP_7,KP_8,KP_9, \
                   KP_4,KP_5,KP_6,KP_PLUS, \
                   KP_1,KP_2,KP_3, \
                   KP_ENTER,KP_DOT,KP_0)
};

After I made these changes it compiled fine for me.

-abjr
« Last Edit: Sun, 11 January 2015, 08:40:10 by abjr »
CM QFR | magicforce 68 (Gateron) | magicforce 68 (Outemu) | Acros 6311-K

Offline ROFLmonstar

  • Thread Starter
  • Posts: 17
Re: Can't seem to compile my firmware
« Reply #2 on: Sun, 11 January 2015, 08:49:28 »
Thanks!

I forgot to remove the 'KEYMAP' before the array before uploading, it was just something I messed with to make it work.
About the comma and the KC_ prefixes, that was it.

It said that 'ESC', 'SLASH' and everything else was not defined, so I went straight to the KC_ESCAPE and everything else, probably was a mistake.

Thank you very much for your help. Now only flipping the bottom row because I somehow screwed that up, too.

Offline abjr

  • Posts: 171
  • Location: Connecticut
    • abjr.org
Re: Can't seem to compile my firmware
« Reply #3 on: Sun, 11 January 2015, 22:34:57 »
Thank you very much for your help.

No problem :) Good luck with your project!
CM QFR | magicforce 68 (Gateron) | magicforce 68 (Outemu) | Acros 6311-K