nekromant / esp8266-frankenstein

Alternative firmware for ESP8266 modules
318 stars 71 forks source link

can't compile firmware #100

Closed Scratch-b closed 1 year ago

Scratch-b commented 1 year ago

Hello, I try to compile this cool firmware, but I have problems. I install the last SDK from link in your README file (ESP8266_NONOS_SDK-2.1.0-18-g61248df) with

$ make STANDALONE=y

After this I download Frankenstein code, make build directory, "cmake" and "make menuconfig" - no problems. But when running "make" from build directory:

[ 1%] Building C object CMakeFiles/frankenstein.dir/src/newlib-dummies.c.obj In file included from /home/scratch/ESP8266/esp8266-frankenstein/include/console.h:61:0, from /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:46: /home/scratch/ESP8266/esp8266-frankenstein/include/espmissingincludes.h:13:6: error: conflicting types for 'ets_isr_attach' void ets_isr_attach(int intr, void handler, void arg); ^ In file included from /home/scratch/ESP8266/esp8266-frankenstein/include/espmissingincludes.h:4:0, from /home/scratch/ESP8266/esp8266-frankenstein/include/console.h:61, from /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:46: /home/scratch/ESP8266/esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/include/ets_sys.h:67:6: note: previous declaration of 'ets_isr_attach' was here void ets_isr_attach(int i, ets_isr_t func, void arg); ^ /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c: In function '_free_r': /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:145:2: error: invalid use of void expression return (void ) os_free(ptr); ^ /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:145:2: warning: 'return' with a value, in function returning void [enabled by default] /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c: In function '_calloc_r': /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:175:5: warning: implicit declaration of function 'pvPortCalloc' [-Wimplicit-function-declaration] return (void ) os_calloc(sz num_el); ^ /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:175:5: warning: 'return' with a value, in function returning void [enabled by default] /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c: At top level: /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:178:6: warning: conflicting types for built-in function 'calloc' [enabled by default] void calloc(size_t sz, int num_el) { ^ /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c: In function 'calloc': /home/scratch/ESP8266/esp8266-frankenstein/src/newlib-dummies.c:179:5: warning: 'return' with a value, in function returning void [enabled by default] return (void ) os_calloc(sz num_el); ^ make[2]: [CMakeFiles/frankenstein.dir/build.make:82: CMakeFiles/frankenstein.dir/src/newlib-dummies.c.obj] Error 1 make[1]: [CMakeFiles/Makefile2:223: CMakeFiles/frankenstein.dir/all] Error 2 make: *** [Makefile:84: all] Error 2

What is wrong? Thank you for your help.

nekromant commented 1 year ago

At this moment I think the biggest problem would be SDK changes. Seems like even ets_isr_attach() changed somehow. When I was still actively developing fk firmware I do remember that I had to regularly sync it with SDK changes.

It's been almost 5 years since I've done any hacking around this firmware and I'm pretty sure many things changed ever since. So far this firmware is unmaintained and pretty much has no rational applications when things like esphome and tasmota are out in the wild. Feel free to experiment, but I'm afraid I can't offer you any more support than that.

Scratch-b commented 1 year ago

Thank you for your respond. Can you tell me the version of appropriate SDK and if you know, where I can download it.

nekromant commented 1 year ago

https://github.com/nekromant/antares/commit/47f1a525d51070d59799db84547719086deb45e0 Looks like 1.0 was the latest update. Back in the day I downloaded The SDK from espressif's site and compiled the toolchain via ct-ng fork for esp. Not sure how much that changed.