Sloeber / arduino-eclipse-plugin

A plugin to make programming the arduino in eclipse easy
https://eclipse.baeyens.it/
417 stars 131 forks source link

Build fails because the file '.../Release/file_opts' is not found when using platform esp32 version 2.0.10 #1575

Closed emintz closed 1 year ago

emintz commented 1 year ago

After I installed version 2.0.10 of the Sloeber ESP32 library, all my builds fail with the following error:

xtensa-esp32-elf-g++: error: /home/eric/Workspaces/temp/Blinky/Release/file_opts: No such file or directory

I have verified this on an empty project in a newly created workspace.

file_opts is configured in the following files:

~/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/platform.sloeber.txt ~/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/platform.txt

Note that I have installed Sloeber in my home directory.

Could someone advise, please? Thank you.

jantje commented 1 year ago

I assume this is very similar to https://github.com/Sloeber/arduino-eclipse-plugin/issues/1553

emintz commented 1 year ago

I commented out the file_opts declarations in platform.txt and platform.sloeber.txt and got the following output when I tried to compile an empty sketch:

Successfully created esp32 image. bash -c "[ ! -f "/home/eric/Workspaces/temp/Blinky"/build_opt.h ] || cp -f "/home/eric/Workspaces/temp/Blinky"/build_opt.h "/home/eric/Workspaces/temp/Blinky/Release"/build_opt.h" bash -c "[ -f "/home/eric/Workspaces/temp/Blinky/Release"/build_opt.h ] || touch "/home/eric/Workspaces/temp/Blinky/Release"/build_opt.h"

make --no-print-directory main-build Building file: ../sloeber.ino.cpp Starting C++ compile "/home/eric/Sloeber/arduinoPlugin/packages/esp32/tools/xtensa-esp32-elf-gcc/esp-2021r2-patch5-8.4.0/bin/xtensa-esp32-elf-g++" -DHAVE_CONFIG_H "-DMBEDTLS_CONFIG_FILE=\"mbedtls/esp_config.h\"" -DUNITY_INCLUDE_CONFIG_H -DWITH_POSIX -D_GNU_SOURCE -DIDF_VER="v4.4.5" -DESP_PLATFORM -D_POSIX_READER_WRITER_LOCKS "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/newlib/platform_include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/freertos/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/freertos/include/esp_additions/freertos" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/freertos/port/xtensa/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/freertos/include/esp_additions" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hw_support/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hw_support/include/soc" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hw_support/include/soc/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hw_support/port/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hw_support/port/esp32/private_include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/heap/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/log/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/lwip/include/apps" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/lwip/include/apps/sntp" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/lwip/lwip/src/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/lwip/port/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/lwip/port/esp32/include/arch" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/soc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/soc/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/soc/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/hal/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/hal/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/hal/platform_port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_rom/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_rom/include/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_rom/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_system/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_system/port/soc" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_system/port/public_compat" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/xtensa/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/xtensa/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/driver/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/driver/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_pm/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_ringbuf/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/efuse/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/efuse/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/vfs/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_wifi/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_event/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_netif/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_eth/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/tcpip_adapter/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_phy/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_phy/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_ipc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/app_trace/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_timer/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/mbedtls/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/mbedtls/mbedtls/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/mbedtls/esp_crt_bundle/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/app_update/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/spi_flash/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bootloader_support/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/nvs_flash/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/pthread/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_gdbstub/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_gdbstub/xtensa" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_gdbstub/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espcoredump/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espcoredump/include/port/xtensa" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/wpa_supplicant/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/wpa_supplicant/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/wpa_supplicant/esp_supplicant/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/ieee802154/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/console" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/asio/asio/asio/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/asio/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/common/osi/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/include/esp32/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/common/api/include/api" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/common/btc/profile/esp/blufi/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/common/btc/profile/esp/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/host/bluedroid/api/include/api" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_common/tinycrypt/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_core" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_core/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_core/storage" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/btc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_models/common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_models/client/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/mesh_models/server/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/api/core/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/api/models/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/bt/esp_ble_mesh/api" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/cbor/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/unity/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/unity/unity/src" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/cmock/CMock/src" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/coap/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/coap/libcoap/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/nghttp/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/nghttp/nghttp2/lib/includes" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-tls" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-tls/esp-tls-crypto" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_adc_cal/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_hid/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/tcp_transport/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_http_client/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_http_server/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_https_ota/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_https_server/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_lcd/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_lcd/interface" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/protobuf-c/protobuf-c" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/protocomm/include/common" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/protocomm/include/security" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/protocomm/include/transports" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/mdns/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_local_ctrl/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/sdmmc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_serial_slave_link/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_websocket_client/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/expat/expat/expat/lib" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/expat/port/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/wear_levelling/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/fatfs/diskio" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/fatfs/vfs" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/fatfs/src" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/freemodbus/freemodbus/common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/idf_test/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/idf_test/include/esp32" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/jsmn/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/json/cJSON" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/libsodium/libsodium/src/libsodium/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/libsodium/port_include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/mqtt/esp-mqtt/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/openssl/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/perfmon/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/spiffs/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/ulp/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/wifi_provisioning/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/rmaker_common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_diagnostics/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/rtc_store/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_insights/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/json_parser/upstream/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/json_parser/upstream" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/json_generator/upstream" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_schedule/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp_secure_cert_mgr/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_rainmaker/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/gpio_button/button/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/qrcode/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/ws2812_led" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp_littlefs/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/tool" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/typedef" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/image" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/math" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/nn" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/layer" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/detect" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp-dl/include/model_zoo" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp32-camera/driver/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/esp32-camera/conversions/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/dotprod/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/support/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/support/mem/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/hann/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/blackman/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/blackman_harris/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/blackman_nuttall/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/nuttall/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/windows/flat_top/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/iir/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/fir/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/add/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/sub/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/mul/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/addc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/mulc/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/math/sqrt/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/matrix/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/fft/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/dct/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/conv/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/common/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/kalman/ekf/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/espressifesp-dsp/modules/kalman/ekf_imu13states/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/include/fb_gfx/include" "-I/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/tools/sdk/esp32/dio_qspi/include" -mlongcalls -Wno-frame-address -ffunction-sections -fdata-sections -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-unused-parameter -Wno-sign-compare -ggdb -freorder-blocks -Wwrite-strings -fstack-protector -fstrict-volatile-bitfields -Wno-error=unused-but-set-variable -fno-jump-tables -fno-tree-switch-conversion -std=gnu++11 -fexceptions -fno-rtti -MMD -c -w -Os -DF_CPU=240000000L -DARDUINO=10812 -DARDUINO_Node32s -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"Node32s\"" -DARDUINO_VARIANT="node32s" -DARDUINO_PARTITION_default -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_USB_CDC_ON_BOOT=0 "@" -I"/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/cores/esp32" -I"/home/eric/Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/variants/node32s" -MMD -MP -MF"sloeber.ino.cpp.d" -MT"sloeber.ino.cpp.o" -D__IN_ECLIPSE=1 -x c++ "../sloeber.ino.cpp" -o "sloeber.ino.cpp.o" xtensa-esp32-elf-g++: error: : No such file or directory make[1]: [subdir.mk:20: sloeber.ino.cpp.o] Error 1 make: [makefile:88: all] Error 2 "make all" terminated with exit code 2. Build might be incomplete.

14:09:42 Build Failed. 2 errors, 0 warnings. (took 775ms)

The two bash commands end up creating an empty build_opt.h in the Release subdirectory. Since compilation succeeds when I create an empty file_opts, I suspect that adding commands that create file_opts will do the same.

I found the following in platform.txt lines 182ff and platform.sloeber.txt lines 183ff:

Check if custom build options exist in the sketch folder

recipe.hooks.prebuild.5.pattern=bash -c "[ ! -f "${build.source.path}"/build_opt.h ] || cp -f "${build.source.path}"/build_opt.h "${build.path}"/build_opt.h" recipe.hooks.prebuild.6.pattern=bash -c "[ -f "${build.path}"/build_opt.h ] || touch "${build.path}"/build_opt.h"

I suspect that everything will work a treat if I add similar commands for file_opts. Should I label the new lines recipe.hooks.prebuild.7.pattern and recipe.hooks.prebuild.8.pattern? Neither of these labels exists.

jantje commented 1 year ago

I commented out the file_opts declarations in platform.txt and platform.sloeber.txt

Do not edit platform.sloeber.txt edit platform.txt and delete platform.sloeber.txt. platform.sloeber.txt will be recreated when needed. See https://github.com/Sloeber/arduino-eclipse-plugin/discussions/1533

xtensa-esp32-elf-g++: error: : No such file or directory

This typically means that there is a problem with the command line; a file with a blank name is in the command line.

I think the changes you made degraded the situation.

Should I label the new lines recipe.hooks.prebuild.7.pattern and recipe.hooks.prebuild.8.pattern

yes

emintz commented 1 year ago

Thank you, jantje. You are completely right.

Adding

# Check if file_opts, which contains the custom file options, exists in the sketchs folder.
# If so, copy it to the build path so g++ can use it. Otherwise, create an empty
# options file on the build path so that g++ can see that no options were specified.
# Note that the makefile references this file, so the build fails if it is not present.
recipe.hooks.prebuild.7.pattern=bash -c "[ ! -f "${build.source.path}"/file_opts ] || cp -f "${build.source.path}"/file_opts "${build.path}"/file_opts"
recipe.hooks.prebuild.8.pattern=bash -c "[ -f "${build.path}"/file_opts ] || touch "${build.path}"/file_opts"

to

Sloeber/arduinoPlugin/packages/esp32/hardware/esp32/2.0.10/platform.txt fixed the problem.

See platform.txt

I hope I uploaded the updated file correctly. I apologize if I made a mistake; I've just started to use GitHub.

Thank you for all your help. Closing the issue

emintz commented 1 year ago

Thank you again. I hope the fix proves useful.

jantje commented 1 year ago

Good you fixed it 👍

emintz commented 1 year ago

Thank you. I hope the fix proves helpful.

patricklaf commented 1 year ago

I completed the fix to make it works on Windows too:

# Check if file_opts, which contains the custom file options, exists in the sketchs folder.
# If so, copy it to the build path so g++ can use it. Otherwise, create an empty
# options file on the build path so that g++ can see that no options were specified.
# Note that the makefile references this file, so the build fails if it is not present.
recipe.hooks.prebuild.7.pattern=bash -c "[ ! -f "${build.source.path}"/file_opts ] || cp -f "${build.source.path}"/file_opts "${build.path}"/file_opts"
recipe.hooks.prebuild.8.pattern=bash -c "[ -f "${build.path}"/file_opts ] || touch "${build.path}"/file_opts"

recipe.hooks.prebuild.7.pattern.windows=cmd /c if exist "{build.source.path}\file_opts" COPY /y "{build.source.path}\file_opts" "{build.path}\file_opts"
recipe.hooks.prebuild.8.pattern.windows=cmd /c if not exist "{build.path}\file_opts" type nul > "{build.path}\file_opts"
emintz commented 1 year ago

Thank you.

All my best wishes,

Eric

On Fri, Aug 4, 2023, 10:05 AM patricklaf @.***> wrote:

I completed the fix to make it works on Windows too:

Check if file_opts, which contains the custom file options, exists in the sketchs folder.

If so, copy it to the build path so g++ can use it. Otherwise, create an empty

options file on the build path so that g++ can see that no options were specified.

Note that the makefile references this file, so the build fails if it is not present.

recipe.hooks.prebuild.7.pattern=bash -c "[ ! -f "${build.source.path}"/file_opts ] || cp -f "${build.source.path}"/file_opts "${build.path}"/file_opts" recipe.hooks.prebuild.8.pattern=bash -c "[ -f "${build.path}"/file_opts ] || touch "${build.path}"/file_opts"

recipe.hooks.prebuild.7.pattern.windows=cmd /c if exist "{build.source.path}\file_opts" COPY /y "{build.source.path}\file_opts" "{build.path}\file_opts" recipe.hooks.prebuild.8.pattern.windows=cmd /c if not exist "{build.path}\file_opts" type nul > "{build.path}\file_opts"

— Reply to this email directly, view it on GitHub https://github.com/Sloeber/arduino-eclipse-plugin/issues/1575#issuecomment-1665666617, or unsubscribe https://github.com/notifications/unsubscribe-auth/AD6QNG43XLS5N3KFMKE7SRTXTT6ULANCNFSM6AAAAAA22MZOCU . You are receiving this because you modified the open/close state.Message ID: @.***>

gruenfron commented 10 months ago

Also thanks,

however on linux I had to change the bash variables from ${} to {}, similar as used in the recipe.hooks.prebuild.6.pattern=bash pattern. Otherwise for me the leading / from the substituted path was missing and either copy or touch of file_opts failed. This worked then for me:

# Check if file_opts, which contains the custom file options, exists in the sketchs folder.
# If so, copy it to the build path so g++ can use it. Otherwise, create an empty
# options file on the build path so that g++ can see that no options were specified.
# Note that the makefile references this file, so the build fails if it is not present.
recipe.hooks.prebuild.7.pattern=bash -c "[ ! -f "{build.source.path}"/file_opts ] || cp -f "{build.source.path}"/file_opts "{build.path}"/file_opts"
recipe.hooks.prebuild.8.pattern=bash -c "[ -f "{build.path}"/file_opts ] || touch "{build.path}"/file_opts"

recipe.hooks.prebuild.7.pattern.windows=cmd /c if exist "{build.source.path}\file_opts" COPY /y "{build.source.path}\file_opts" "{build.path}\file_opts"
recipe.hooks.prebuild.8.pattern.windows=cmd /c if not exist "{build.path}\file_opts" type nul > "{build.path}\file_opts"