Can not build ESP-AT with manual

AVilezhaninov
Posts: 2
Joined: Thu May 21, 2020 5:45 pm

Can not build ESP-AT with manual

Postby AVilezhaninov » Thu May 21, 2020 6:26 pm

Hi everyone!
Please, give me a helping hand.
I'm trying to build ESP-AT project going through this documentation step by step: https://github.com/espressif/esp-at/blo ... Started.md
I've installed compiler environment, all seems OK.
Next steps from ESP-AT compiling manual:
1) Cloned project in ~/esp/esp-at - all seems OK;
2) Didn't use "rm sdkconfig" because there wasn't such file;
3) "make defconfig" - all seems OK;
4) "make menuconfig" - here begin some warnings about toolchain and compiler versions:

Code: Select all

# make menuconfig
Makefile:29: There is no module_config/module_wroom-32,Using module_config/module_esp32_default
Toolchain path: /opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
WARNING: Toolchain version is not supported: crosstool-ng-1.22.0-80-g6c4433a5
Expected to see version: esp-2019r2
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
WARNING: Compiler version is not supported: 5.2.0
Expected to see version(s): 8.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Python requirements from C:/msys32/home/hw/esp/esp-idf/requirements.txt are satisfied.
MENUCONFIG
Loading defaults file module_config/module_esp32_default/sdkconfig.defaults...
but menuconfig starts fine where I can setup serial port in "Serial flasher config";
5) After that I'm trying to make project, but here appear previous warnings and compile errors:

Code: Select all

# make
Makefile:29: There is no module_config/module_wroom-32,Using module_config/module_esp32_default
Toolchain path: /opt/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
WARNING: Toolchain version is not supported: crosstool-ng-1.22.0-80-g6c4433a5
Expected to see version: esp-2019r2
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
WARNING: Compiler version is not supported: 5.2.0
Expected to see version(s): 8.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
Python requirements from C:/msys32/home/hw/esp/esp-idf/requirements.txt are satisfied.
WARNING: Toolchain version is not supported: crosstool-ng-1.22.0-80-g6c4433a5
Expected to see version: esp-2019r2
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
WARNING: Compiler version is not supported: 5.2.0
Expected to see version(s): 8.2.0
Please check ESP-IDF setup instructions and update the toolchain, or proceed at your own risk.
CC build/bootloader/bootloader_support/src/bootloader_random.o
CC build/bootloader/bootloader_support/src/flash_encrypt.o
~~~~~~~~~~~~~~
AR build/bootloader/efuse/libefuse.a
LD build/bootloader/bootloader.elf
esptool.py v2.8
building AT customized partition table module_config/module_esp32_default/at_customize.csv
building AT customized partition table succeed
generating AT customized partition bins to /home/hw/esp/esp-at/build/customized_partitions
generating ble_data.bin: python /home/hw/esp/esp-at/tools/BLEService.py -t /home/hw/esp/esp-at/build/customized_partitions/ble_data.bin /home/hw/esp/esp-at/components/customized_partitions/raw_data/ble_data/example.csv
AT customized partitions successfully generated: ble_data
generating server_cert.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/server_cert cert /home/hw/esp/esp-at/components/customized_partitions/raw_data/server_cert/server_cert.crt
AT customized partitions successfully generated: server_cert
generating server_key.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/server_key key /home/hw/esp/esp-at/components/customized_partitions/raw_data/server_key/server.key
AT customized partitions successfully generated: server_key
generating server_ca.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/server_ca ca /home/hw/esp/esp-at/components/customized_partitions/raw_data/server_ca/server_ca.crt
AT customized partitions successfully generated: server_ca
generating client_cert.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/client_cert cert /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_cert/client_cert_00.crt cert /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_cert/client_cert_01.crt
AT customized partitions successfully generated: client_cert
generating client_key.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/client_key key /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_key/client_key_00.key key /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_key/client_key_01.key
AT customized partitions successfully generated: client_key
generating client_ca.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/client_ca ca /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_ca/client_ca_00.crt ca /home/hw/esp/esp-at/components/customized_partitions/raw_data/client_ca/client_ca_01.crt
AT customized partitions successfully generated: client_ca
generating factory_param.bin(WROOM-32): python /home/hw/esp/esp-at/tools/factory_param_generate.py -t /home/hw/esp/esp-at/build/customized_partitions/factory_param.bin /home/hw/esp/esp-at/components/customized_partitions/raw_data/factory_param/factory_param_data.csv
generate parameter bin: platform PLATFORM_ESP32, module name WROOM-32
AT customized partitions successfully generated: factory_param
generating mqtt_cert.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/mqtt_cert cert /home/hw/esp/esp-at/components/customized_partitions/raw_data/mqtt_cert/mqtt_client.crt
AT customized partitions successfully generated: mqtt_cert
generating mqtt_key.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/mqtt_key key /home/hw/esp/esp-at/components/customized_partitions/raw_data/mqtt_key/mqtt_client.key
AT customized partitions successfully generated: mqtt_key
generating mqtt_ca.bin: python /home/hw/esp/esp-at/tools/AtPKI.py generate_bin -b /home/hw/esp/esp-at/build/customized_partitions/mqtt_ca ca /home/hw/esp/esp-at/components/customized_partitions/raw_data/mqtt_ca/mqtt_ca.crt
AT customized partitions successfully generated: mqtt_ca
AT customized bin generation finished
Building partitions from /home/hw/esp/esp-at/module_config/module_esp32_default/partitions_at.csv...
CC build/app_trace/heap_trace_tohost.o
CC build/app_trace/app_trace.o
~~~~~~~~~
CC build/esp_eth/src/esp_eth_phy_dm9051.o
CC build/esp_eth/src/esp_eth_phy_dp83848.o
CC build/esp_eth/src/esp_eth_mac_dm9051.o
CC build/esp_eth/src/esp_eth.o
In file included from C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:15:0:
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h: In function 'atomic_flag_test_and_set_explicit':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:271:31: error: request for member '__val' in something not a structure or union
  __atomic_exchange_n(&(object)->__val, desired, order)
                               ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:387:10: note: in expansion of macro 'atomic_exchange_explicit'
  return (atomic_exchange_explicit(&__object->__flag, 1, __order));
          ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:387:2: error: incompatible type for argument 1 of '__atomic_exchange_n'
  return (atomic_exchange_explicit(&__object->__flag, 1, __order));
  ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h: In function 'atomic_flag_clear_explicit':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:285:28: error: request for member '__val' in something not a structure or union
  __atomic_store_n(&(object)->__val, desired, order)
                            ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:394:2: note: in expansion of macro 'atomic_store_explicit'
  atomic_store_explicit(&__object->__flag, 0, __order);
  ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:394:2: error: incompatible type for argument 1 of '__atomic_store_n'
In file included from C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:15:0:
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c: In function 'esp_eth_driver_install':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:91:47: error: request for member '__val' in something not a structure or union
 #define atomic_init(obj, value)  ((void)((obj)->__val = (value)))
                                               ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:175:5: note: in expansion of macro 'atomic_init'
     atomic_init(&eth_driver->ref_count, 1);
     ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c: In function 'esp_eth_driver_uninstall':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:283:27: error: request for member '__val' in something not a structure or union
  __atomic_load_n(&(object)->__val, order)
                           ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:27:15: note: in definition of macro 'ETH_CHECK'
         if (!(a))                                                                 \
               ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:365:2: note: in expansion of macro 'atomic_load_explicit'
  atomic_load_explicit(object, memory_order_seq_cst)
  ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:216:15: note: in expansion of macro 'atomic_load'
     ETH_CHECK(atomic_load(&eth_driver->ref_count) == 1,
               ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:216:5: error: incompatible type for argument 1 of '__atomic_load_n'
     ETH_CHECK(atomic_load(&eth_driver->ref_count) == 1,
     ^
In file included from C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:15:0:
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c: In function 'esp_eth_increase_reference':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:273:30: error: request for member '__val' in something not a structure or union
  __atomic_fetch_add(&(object)->__val, operand, order)
                              ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:355:2: note: in expansion of macro 'atomic_fetch_add_explicit'
  atomic_fetch_add_explicit(object, operand, memory_order_seq_cst)
  ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:346:5: note: in expansion of macro 'atomic_fetch_add'
     atomic_fetch_add(&eth_driver->ref_count, 1);
     ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:346:5: error: incompatible type for argument 1 of '__atomic_fetch_add'
In file included from C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:15:0:
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c: In function 'esp_eth_decrease_reference':
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:279:30: error: request for member '__val' in something not a structure or union
  __atomic_fetch_sub(&(object)->__val, operand, order)
                              ^
C:/msys32/home/hw/esp/esp-idf/components/newlib/include/stdatomic.h:361:2: note: in expansion of macro 'atomic_fetch_sub_explicit'
  atomic_fetch_sub_explicit(object, operand, memory_order_seq_cst)
  ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:357:5: note: in expansion of macro 'atomic_fetch_sub'
     atomic_fetch_sub(&eth_driver->ref_count, 1);
     ^
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c:357:5: error: incompatible type for argument 1 of '__atomic_fetch_sub'
C:/msys32/home/hw/esp/esp-idf/components/esp_eth/src/esp_eth.c: At top level:
cc1.exe: warning: unrecognized command line option '-Wno-frame-address'
make[1]: *** [/home/hw/esp/esp-idf/make/component_wrapper.mk:292: src/esp_eth.o] Error 1
make: *** [C:/msys32/home/hw/esp/esp-idf/make/project.mk:590: component-esp_eth-build] Error 2
(some output were cut with ~~~~~~)
I've searched solution but nothing helped me, what could I do? Any suggestions?

Best regards!

AVilezhaninov
Posts: 2
Joined: Thu May 21, 2020 5:45 pm

Re: Can not build ESP-AT with manual

Postby AVilezhaninov » Sun May 24, 2020 6:50 pm

OK, I fixed it.
1) I've missed "rm -rf esp-idf" command, if do that "make defconfig" will download exact version of ESP-IDF in ESP-AT folder.
2) I've changed "xtensa-esp32-elf" folder in "C:\msys32\opt" with "esp-2019r2" toolchain version downloaded from https://dl.espressif.com/dl/xtensa-esp3 ... -win32.zip.
after this steps project compiled successfully.
Good luck!

Who is online

Users browsing this forum: No registered users and 37 guests