esp-iot-solution
esp-iot-solution copied to clipboard
implicit declaration of function 'i2c_master_get_bus_handle' (AEGHB-1022)
Answers checklist.
- [x] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
- [x] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
- [x] I have searched the issue tracker for a similar issue and not found a similar issue.
IDF version.
5.3
Espressif SoC revision.
esp32
Operating System used.
Windows
How did you build your project?
Command line with Make
If you are using Windows, please specify command line type.
PowerShell
Development Kit.
esp32-pico-d4
Steps to reproduce.
当我添加esp_simplefoc组件并编译的时候,发现拉到的i2c_bus版本是1.3,当我将例程代码复制到我的.cpp中后,编译发现报错i2c_master_get_bus_handle函数未定义,我全局搜索了,确实找不到这个函数。当我在i2c_bus组件中屏蔽这一段代码后,编译通过了
Build Logs.
Bootloader binary size 0x6880 bytes. 0x780 bytes (7%) free.
[967/1020] Building C object esp-idf/espressif__i2c_bus/CMakeFiles/__idf_espressif__i2c_bus.dir/i2c_bus_v2.c.obj
FAILED: esp-idf/espressif__i2c_bus/CMakeFiles/__idf_espressif__i2c_bus.dir/i2c_bus_v2.c.obj
ccache C:\Users\lh094\esp\tool_5.3\tools\xtensa-esp-elf\esp-13.2.0_20240530\xtensa-esp-elf\bin\xtensa-esp32-elf-gcc.exe -DESP_PLATFORM -DIDF_VER=\"v5.3.1-244-g4d0db7045d\" -DSOC_MMU_PAGE_SIZE=CONFIG_MMU_PAGE_SIZE -DSOC_XTAL_FREQ_MHZ=CONFIG_XTAL_FREQ -D_GLIBCXX_HAVE_POSIX_SEMAPHORE -D_GLIBCXX_USE_POSIX_SEMAPHORE -D_GNU_SOURCE -D_POSIX_READER_WRITER_LOCKS -IC:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/build/config -IC:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/managed_components/espressif__i2c_bus/include -IC:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/managed_components/espressif__i2c_bus/private_include -IC:/Users/lh094/esp/v5.3/esp-idf/components/newlib/platform_include -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/config/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/config/include/freertos -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/config/xtensa/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/FreeRTOS-Kernel/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include/freertos -IC:/Users/lh094/esp/v5.3/esp-idf/components/freertos/esp_additions/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/include/soc -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/include/soc/esp32 -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/dma/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/ldo/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/port/esp32/. -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_hw_support/port/esp32/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/heap/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/log/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/soc/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/soc/esp32 -IC:/Users/lh094/esp/v5.3/esp-idf/components/soc/esp32/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/hal/platform_port/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/hal/esp32/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/hal/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_rom/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_rom/include/esp32 -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_rom/esp32 -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_common/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_system/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_system/port/soc -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_system/port/include/private -IC:/Users/lh094/esp/v5.3/esp-idf/components/xtensa/esp32/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/xtensa/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/xtensa/deprecated_include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/include/apps -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/include/apps/sntp -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/lwip/src/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/port/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/port/freertos/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/port/esp32xx/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/port/esp32xx/include/arch -IC:/Users/lh094/esp/v5.3/esp-idf/components/lwip/port/esp32xx/include/sys -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_i2c/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/driver/deprecated -IC:/Users/lh094/esp/v5.3/esp-idf/components/driver/i2c/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/driver/touch_sensor/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/driver/twai/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/driver/touch_sensor/esp32/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_pm/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_ringbuf/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_gpio/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_pcnt/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_gptimer/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_spi/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_mcpwm/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_ana_cmpr/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_i2s/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_sdmmc/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/sdmmc/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_sdspi/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_sdio/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_dac/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_rmt/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_tsens/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_sdm/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_uart/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/vfs/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_ledc/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_parlio/include -IC:/Users/lh094/esp/v5.3/esp-idf/components/esp_driver_usb_serial_jtag/include -mlongcalls -Wno-frame-address -fno-builtin-memcpy -fno-builtin-memset -fno-builtin-bzero -fno-builtin-stpcpy -fno-builtin-strncpy -fdiagnostics-color=always -fdiagnostics-color=always -ffunction-sections -fdata-sections -Wall -Werror=all -Wno-error=unused-function -Wno-error=unused-variable -Wno-error=unused-but-set-variable -Wno-error=deprecated-declarations -Wextra -Wno-unused-parameter -Wno-sign-compare -Wno-enum-conversion -gdwarf-4 -ggdb -Og -fno-shrink-wrap -fmacro-prefix-map=C:/Users/lh094/Desktop/SynologyDrive/Project/foc_control=. -fmacro-prefix-map=C:/Users/lh094/esp/v5.3/esp-idf=/IDF -fstrict-volatile-bitfields -fno-jump-tables -fno-tree-switch-conversion -std=gnu17 -Wno-old-style-declaration -DI2C_BUS_VER_MAJOR=1 -DI2C_BUS_VER_MINOR=3 -DI2C_BUS_VER_PATCH=0 -MD -MT esp-idf/espressif__i2c_bus/CMakeFiles/__idf_espressif__i2c_bus.dir/i2c_bus_v2.c.obj -MF esp-idf\espressif__i2c_bus\CMakeFiles\__idf_espressif__i2c_bus.dir\i2c_bus_v2.c.obj.d -o esp-idf/espressif__i2c_bus/CMakeFiles/__idf_espressif__i2c_bus.dir/i2c_bus_v2.c.obj -c C:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/managed_components/espressif__i2c_bus/i2c_bus_v2.c
C:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/managed_components/espressif__i2c_bus/i2c_bus_v2.c: In function 'i2c_bus_create':
C:/Users/lh094/Desktop/SynologyDrive/Project/foc_control/managed_components/espressif__i2c_bus/i2c_bus_v2.c:103:9: error: implicit declaration of function 'i2c_master_get_bus_handle' [-Werror=implicit-function-declaration]
103 | if (i2c_master_get_bus_handle(port, &s_i2c_bus[port].bus_handle) == ESP_OK) {
| ^~~~~~~~~~~~~~~~~~~~~~~~~
cc1.exe: some warnings being treated as errors
[984/1020] Building CXX object esp-idf/espressif__arduino-foc/CMakeFiles/__idf_espressif__arduino-foc.dir/src/BLDCMotor.cpp.obj
ninja: build stopped: subcommand failed.
More Information.
No response