乐鑫技术交流
直播中

吕钢格

8年用户 994经验值
私信 关注
[问答]

espressif/esp-aliyun在make-j8时出错是什么原因导致的?

按照Github中 esp-aliyun的步骤一步步走
也把版本改成v4.2后
在尝试smart_light时,在make -j8时出现下面的错误:
home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:68:24: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_init)(_lock_t *lock);
                        ^~~~~~~
                        clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:69:34: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_init_recursive)(_lock_t *lock);
                                  ^~~~~~~
                                  clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:70:25: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_close)(_lock_t *lock);
                         ^~~~~~~
                         clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:71:35: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_close_recursive)(_lock_t *lock);
                                   ^~~~~~~
                                   clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:72:27: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_acquire)(_lock_t *lock);
                           ^~~~~~~
                           clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:73:37: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_acquire_recursive)(_lock_t *lock);
                                     ^~~~~~~
                                     clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:74:30: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     int (*_lock_try_acquire)(_lock_t *lock);
                              ^~~~~~~
                              clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:75:40: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     int (*_lock_try_acquire_recursive)(_lock_t *lock);
                                        ^~~~~~~
                                        clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:76:27: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_release)(_lock_t *lock);
                           ^~~~~~~
                           clock_t
/home/jack/esp/esp-idf/components/esp_rom/include/esp32/rom/libc_stubs.h:77:37: error: unknown type name '_lock_t'; did you mean 'clock_t'?
     void (*_lock_release_recursive)(_lock_t *lock);
                                     ^~~~~~~
                                     clock_t
make[1]: *** [/home/jack/esp/esp-idf/make/component_wrapper.mk:292: gcov/gcov_rtio.o] Error 1
make: *** [/home/jack/esp/esp-idf/make/project.mk:635: component-app_trace-build] Error 2
CC build/esp_event/event_send.o
/home/jack/esp/esp-idf/components/driver/adc_common.c:78:8: error: unknown type name '_lock_t'
static _lock_t adc2_wifi_lock;
        ^~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c8: error: unknown type name '_lock_t'
static _lock_t adc1_dma_lock;
        ^~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c: In function 'adc1_dma_mode_acquire':
/home/jack/esp/esp-idf/components/driver/adc_common.c:101:33: error: implicit declaration of function '_lock_acquire'; did you mean 'spinlock_acquire'? [-Werror=implicit-function-declaration]
#define ADC1_DMA_LOCK_ACQUIRE() _lock_acquire( &adc1_dma_lock )
                                 ^~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c:302:5: note: in expansion of macro 'ADC1_DMA_LOCK_ACQUIRE'
     ADC1_DMA_LOCK_ACQUIRE();
     ^~~~~~~~~~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c: In function 'adc1_lock_release':
/home/jack/esp/esp-idf/components/driver/adc_common.c:102:33: error: implicit declaration of function '_lock_release'; did you mean 'adc1_lock_release'? [-Werror=implicit-function-declaration]
#define ADC1_DMA_LOCK_RELEASE() _lock_release( &adc1_dma_lock )
                                 ^~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c:332:5: note: in expansion of macro 'ADC1_DMA_LOCK_RELEASE'
     ADC1_DMA_LOCK_RELEASE();
     ^~~~~~~~~~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c: In function 'adc2_config_channel_atten':
/home/jack/esp/esp-idf/components/driver/adc_common.c:82:41: error: implicit declaration of function '_lock_try_acquire'; did you mean 'adc2_wifi_acquire'? [-Werror=implicit-function-declaration]
#define ADC2_WIFI_LOCK_TRY_ACQUIRE()    _lock_try_acquire( &adc2_wifi_lock )
                                         ^~~~~~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/driver/adc_common.c:422:10: note: in expansion of macro 'ADC2_WIFI_LOCK_TRY_ACQUIRE'
     if ( ADC2_WIFI_LOCK_TRY_ACQUIRE() == -1 ) {
          ^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jack/esp/esp-idf/components/esp32/sleep_modes.c:88:8: error: unknown type name '_lock_t'
static _lock_t lock_rtc_memory_crc;
        ^~~~~~~
/home/jack/esp/esp-idf/components/esp32/sleep_modes.c: In function 'esp_get_deep_sleep_wake_stub':
AR build/esp_adc_cal/libesp_adc_cal.a
/home/jack/esp/esp-idf/components/esp32/sleep_modes.c:102:5: error: implicit declaration of function '_lock_acquire'; did you mean 'spinlock_acquire'? [-Werror=implicit-function-declaration]
     _lock_acquire(&lock_rtc_memory_crc);
     ^~~~~~~~~~~~~
     spinlock_acquire
/home/jack/esp/esp-idf/components/esp32/sleep_modes.c:107:5: error: implicit declaration of function '_lock_release'; did you mean 'spinlock_release'? [-Werror=implicit-function-declaration]
     _lock_release(&lock_rtc_memory_crc);
     ^~~~~~~~~~~~~
     spinlock_release
                    

回帖(1)

h1654155598.0450

2024-6-19 16:55:58
这个问题可能是由于以下几个原因导致的:

1. **环境配置问题**:确保你的开发环境配置正确,包括Python版本、pip版本、esp-idf版本等。

2. **依赖库问题**:可能存在某些依赖库的缺失或版本不兼容。请检查你的项目依赖库是否已经正确安装,并且版本与esp-idf兼容。

3. **esp-idf版本问题**:你已经尝试将esp-idf版本改为v4.2,但可能仍然存在不兼容的问题。请确保你使用的esp-idf版本与esp-aliyun项目兼容。

4. **代码问题**:可能是esp-aliyun项目中的代码存在问题。你可以尝试查看项目的issue页面,看看是否有其他人遇到了类似的问题,并找到解决方案。

5. **编译器问题**:可能是编译器的问题。你可以尝试更新编译器到最新版本,或者尝试使用不同的编译器。

解决这个问题的步骤:

1. 确保你的开发环境配置正确,包括Python版本、pip版本、esp-idf版本等。

2. 检查项目依赖库是否已经正确安装,并且版本与esp-idf兼容。

3. 尝试使用不同的esp-idf版本,找到与esp-aliyun项目兼容的版本。

4. 查看esp-aliyun项目的issue页面,看看是否有其他人遇到了类似的问题,并找到解决方案。

5. 更新编译器到最新版本,或者尝试使用不同的编译器。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分