mjaakkol / bme680_esp_idf

BME680 software build on top of ESP-IDF 4.0 generation and Bosch BSEC stack
MIT License
11 stars 2 forks source link

Doesn't build #1

Closed flamedmg closed 4 years ago

flamedmg commented 4 years ago

I did everything as instructed. First it rejected to find libm.a, but i found it and copied to the desired place.

 idf.py build
Executing action: all (aliases: build)
Running ninja in directory /Users/dmg/tmp/bme680_esp_idf/build
Executing "ninja all"...
[11/933] cd /Users/dmg/tmp/bme680_esp_idf/build/esp-idf/partition_table && /usr/local/Cellar/cmake/3....1/bin/cmake -E echo "*******************************************************************************"
Partition table binary generated. Contents:
*******************************************************************************
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
*******************************************************************************
[360/933] Performing configure step for 'bootloader'
-- Building ESP-IDF components for target esp32
-- Adding linker script /Users/dmg/esp/esp-idf/components/esp32/ld/esp32.peripherals.ld
-- Adding linker script /Users/dmg/esp/esp-idf/components/esp_rom/esp32/ld/esp32.rom.ld
-- Adding linker script /Users/dmg/esp/esp-idf/components/esp_rom/esp32/ld/esp32.rom.newlib-funcs.ld
-- Adding linker script /Users/dmg/esp/esp-idf/components/esp_rom/esp32/ld/esp32.rom.libgcc.ld
-- Adding linker script /Users/dmg/esp/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.ld
-- Adding linker script /Users/dmg/esp/esp-idf/components/bootloader/subproject/main/ld/esp32/bootloader.rom.ld
-- Components: bootloader bootloader_support efuse esp32 esp_common esp_rom esptool_py log main micro-ecc partition_table soc spi_flash xtensa
-- Component paths: /Users/dmg/esp/esp-idf/components/bootloader /Users/dmg/esp/esp-idf/components/bootloader_support /Users/dmg/esp/esp-idf/components/efuse /Users/dmg/esp/esp-idf/components/esp32 /Users/dmg/esp/esp-idf/components/esp_common /Users/dmg/esp/esp-idf/components/esp_rom /Users/dmg/esp/esp-idf/components/esptool_py /Users/dmg/esp/esp-idf/components/log /Users/dmg/esp/esp-idf/components/bootloader/subproject/main /Users/dmg/esp/esp-idf/components/bootloader/subproject/components/micro-ecc /Users/dmg/esp/esp-idf/components/partition_table /Users/dmg/esp/esp-idf/components/soc /Users/dmg/esp/esp-idf/components/spi_flash /Users/dmg/esp/esp-idf/components/xtensa
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/dmg/tmp/bme680_esp_idf/build/bootloader
[381/933] Performing build step for 'bootloader'
[1/2] Linking C executable bootloader.elf
[2/2] Generating binary image from built executable
esptool.py v3.0-dev
Generated /Users/dmg/tmp/bme680_esp_idf/build/bootloader/bootloader.bin
[932/933] Linking CXX executable bme680_esp.elf
FAILED: bme680_esp.elf
: && /Users/dmg/.espressif/tools/xtensa-esp32-elf/esp-2020r1-8.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++  -mlongcalls -Wno-frame-address  -L/usr/local/opt/libxml2/lib CMakeFiles/bme680_esp.elf.dir/project_elf_src.c.obj  -o bme680_esp.elf  esp-idf/xtensa/libxtensa.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/efuse/libefuse.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/esp_system/libesp_system.a  esp-idf/soc/libsoc.a  esp-idf/vfs/libvfs.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/tcpip_adapter/libtcpip_adapter.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/esp_event/libesp_event.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/lwip/liblwip.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/driver/libdriver.a  esp-idf/pthread/libpthread.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/perfmon/libperfmon.a  esp-idf/esp32/libesp32.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/app_trace/libapp_trace.a  esp-idf/asio/libasio.a  esp-idf/cbor/libcbor.a  esp-idf/coap/libcoap.a  esp-idf/console/libconsole.a  esp-idf/nghttp/libnghttp.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/esp_adc_cal/libesp_adc_cal.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/protobuf-c/libprotobuf-c.a  esp-idf/protocomm/libprotocomm.a  esp-idf/mdns/libmdns.a  esp-idf/esp_local_ctrl/libesp_local_ctrl.a  esp-idf/sdmmc/libsdmmc.a  esp-idf/esp_serial_slave_link/libesp_serial_slave_link.a  esp-idf/esp_websocket_client/libesp_websocket_client.a  esp-idf/expat/libexpat.a  esp-idf/wear_levelling/libwear_levelling.a  esp-idf/fatfs/libfatfs.a  esp-idf/freemodbus/libfreemodbus.a  esp-idf/jsmn/libjsmn.a  esp-idf/json/libjson.a  esp-idf/libsodium/liblibsodium.a  esp-idf/mqtt/libmqtt.a  esp-idf/openssl/libopenssl.a  esp-idf/spiffs/libspiffs.a  esp-idf/ulp/libulp.a  esp-idf/unity/libunity.a  esp-idf/wifi_provisioning/libwifi_provisioning.a  esp-idf/main/libmain.a  esp-idf/bme680/libbme680.a  -Wl,--cref -Wl,--Map=/Users/dmg/tmp/bme680_esp_idf/build/bme680_esp.map  -fno-rtti  -fno-lto  esp-idf/asio/libasio.a  esp-idf/cbor/libcbor.a  esp-idf/coap/libcoap.a  esp-idf/esp_adc_cal/libesp_adc_cal.a  esp-idf/esp_gdbstub/libesp_gdbstub.a  esp-idf/esp_https_ota/libesp_https_ota.a  esp-idf/esp_local_ctrl/libesp_local_ctrl.a  esp-idf/esp_serial_slave_link/libesp_serial_slave_link.a  esp-idf/esp_websocket_client/libesp_websocket_client.a  esp-idf/expat/libexpat.a  esp-idf/fatfs/libfatfs.a  esp-idf/sdmmc/libsdmmc.a  esp-idf/wear_levelling/libwear_levelling.a  esp-idf/freemodbus/libfreemodbus.a  esp-idf/jsmn/libjsmn.a  esp-idf/libsodium/liblibsodium.a  esp-idf/mqtt/libmqtt.a  esp-idf/openssl/libopenssl.a  esp-idf/spiffs/libspiffs.a  esp-idf/unity/libunity.a  esp-idf/wifi_provisioning/libwifi_provisioning.a  esp-idf/protocomm/libprotocomm.a  esp-idf/protobuf-c/libprotobuf-c.a  esp-idf/mdns/libmdns.a  esp-idf/console/libconsole.a  esp-idf/json/libjson.a  esp-idf/xtensa/libxtensa.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/efuse/libefuse.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/esp_system/libesp_system.a  esp-idf/soc/libsoc.a  esp-idf/vfs/libvfs.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/tcpip_adapter/libtcpip_adapter.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/esp_event/libesp_event.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/lwip/liblwip.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/driver/libdriver.a  esp-idf/pthread/libpthread.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/perfmon/libperfmon.a  esp-idf/esp32/libesp32.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/app_trace/libapp_trace.a  esp-idf/nghttp/libnghttp.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/soc/soc/esp32/libsoc_esp32.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/librtc.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libphy.a  esp-idf/xtensa/libxtensa.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/efuse/libefuse.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/esp_system/libesp_system.a  esp-idf/soc/libsoc.a  esp-idf/vfs/libvfs.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/tcpip_adapter/libtcpip_adapter.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/esp_event/libesp_event.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/lwip/liblwip.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/driver/libdriver.a  esp-idf/pthread/libpthread.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/perfmon/libperfmon.a  esp-idf/esp32/libesp32.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/app_trace/libapp_trace.a  esp-idf/nghttp/libnghttp.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/soc/soc/esp32/libsoc_esp32.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/librtc.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libphy.a  esp-idf/xtensa/libxtensa.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/efuse/libefuse.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/esp_system/libesp_system.a  esp-idf/soc/libsoc.a  esp-idf/vfs/libvfs.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/tcpip_adapter/libtcpip_adapter.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/esp_event/libesp_event.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/lwip/liblwip.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/driver/libdriver.a  esp-idf/pthread/libpthread.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/perfmon/libperfmon.a  esp-idf/esp32/libesp32.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/app_trace/libapp_trace.a  esp-idf/nghttp/libnghttp.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/soc/soc/esp32/libsoc_esp32.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/librtc.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libphy.a  esp-idf/xtensa/libxtensa.a  esp-idf/mbedtls/libmbedtls.a  esp-idf/efuse/libefuse.a  esp-idf/bootloader_support/libbootloader_support.a  esp-idf/app_update/libapp_update.a  esp-idf/spi_flash/libspi_flash.a  esp-idf/esp_system/libesp_system.a  esp-idf/soc/libsoc.a  esp-idf/vfs/libvfs.a  esp-idf/esp_eth/libesp_eth.a  esp-idf/tcpip_adapter/libtcpip_adapter.a  esp-idf/esp_netif/libesp_netif.a  esp-idf/esp_event/libesp_event.a  esp-idf/wpa_supplicant/libwpa_supplicant.a  esp-idf/nvs_flash/libnvs_flash.a  esp-idf/esp_wifi/libesp_wifi.a  esp-idf/lwip/liblwip.a  esp-idf/log/liblog.a  esp-idf/heap/libheap.a  esp-idf/esp_ringbuf/libesp_ringbuf.a  esp-idf/driver/libdriver.a  esp-idf/pthread/libpthread.a  esp-idf/espcoredump/libespcoredump.a  esp-idf/perfmon/libperfmon.a  esp-idf/esp32/libesp32.a  esp-idf/esp_common/libesp_common.a  esp-idf/esp_timer/libesp_timer.a  esp-idf/freertos/libfreertos.a  esp-idf/newlib/libnewlib.a  esp-idf/cxx/libcxx.a  esp-idf/app_trace/libapp_trace.a  esp-idf/nghttp/libnghttp.a  esp-idf/esp-tls/libesp-tls.a  esp-idf/tcp_transport/libtcp_transport.a  esp-idf/esp_http_client/libesp_http_client.a  esp-idf/esp_http_server/libesp_http_server.a  esp-idf/ulp/libulp.a  esp-idf/mbedtls/mbedtls/library/libmbedtls.a  esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a  esp-idf/mbedtls/mbedtls/library/libmbedx509.a  esp-idf/soc/soc/esp32/libsoc_esp32.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcoexist.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libcore.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libespnow.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libmesh.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libnet80211.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libpp.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/librtc.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libsmartconfig.a  /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32/libphy.a  /Users/dmg/esp/esp-idf/components/xtensa/esp32/libhal.a  -u esp_app_desc  -L /Users/dmg/esp/esp-idf/components/esp_rom/esp32/ld  -T esp32.rom.newlib-time.ld  -T esp32.rom.ld  -T esp32.rom.libgcc.ld  -T esp32.rom.newlib-data.ld  -T esp32.rom.syscalls.ld  -T esp32.rom.newlib-funcs.ld  -u vfs_include_syscalls_impl  -L /Users/dmg/esp/esp-idf/components/esp_wifi/lib/esp32  -u pthread_include_pthread_impl  -u pthread_include_pthread_cond_impl  -u pthread_include_pthread_local_storage_impl  -L /Users/dmg/tmp/bme680_esp_idf/build/esp-idf/esp32  -T esp32_out.ld  -u app_main  -L /Users/dmg/tmp/bme680_esp_idf/build/esp-idf/esp32/ld  -T esp32.project.ld  -L /Users/dmg/esp/esp-idf/components/esp32/ld  -T esp32.peripherals.ld  -u call_user_start_cpu0  -u ld_include_panic_highint_hdl  -Wl,--gc-sections  -Wl,--undefined=uxTopUsedPriority  -lm  esp-idf/newlib/libnewlib.a  -u newlib_include_locks_impl  -u newlib_include_heap_impl  -u newlib_include_syscalls_impl  -u newlib_include_pthread_impl  -lgcc  -u __cxa_guard_dummy  -lstdc++  esp-idf/pthread/libpthread.a  -u __cxx_fatal_exception  esp-idf/app_trace/libapp_trace.a  -lgcov  esp-idf/app_trace/libapp_trace.a  -lgcov  -lc  ../bme680/algo/normal_version/bin/esp32/libalgobsec.a  -lextra  /Users/dmg/esp/esp-idf/components/newlib/lib/libm.a && :
/Users/dmg/.espressif/tools/xtensa-esp32-elf/esp-2020r1-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld: cannot find -lextra
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
ninja failed with exit code 1
mjaakkol commented 4 years ago

It looks like linking fails due to not finding "extra". I don't have environment setup up right now but can you try removing target_link_libraries(${COMPONENT_LIB} PUBLIC bme680lib extra mathlib) from CMakeLists.txt file?

flamedmg commented 4 years ago

Mikko, thank you very much! It builds now!