ESP-ADF dueros示例编译不通过
Posted: Sun Jul 19, 2020 12:56 am
主要错误发生在链接为主程序上, 这个问题卡了我四天了, 初学ESP-ADF不太懂,请大佬帮忙!
以下是编译的报错信息, 之前编译应该都是OK的, 就死在了链接环节, 好像是librecorder_engine.a录音引擎库,使用了get_wakenet_iface(), et_wakenet_coeff()以及VAD检测的一些函数,但在链接时未找到.
我如何操作才能让ESP_ADF中的Dueros示例编译通过呢? 谢谢各位大佬.
[6/7] Linking CXX executable esp_dueros.elf
FAILED: esp_dueros.elf
cmd.exe /C "cd . && D:\User\.espressif\tools\xtensa-esp32-elf\esp-2019r2-8.2.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-g++.exe -mlongcalls -Wno-frame-address -nostdlib @CMakeFiles\esp_dueros.elf.rsp -o esp_dueros.elf && cd ."
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe0): undefined reference to `get_wakenet_iface'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe4): undefined reference to `get_wakenet_coeff'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe8): undefined reference to `vad_create'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xec): undefined reference to `vad_destroy'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xf4): undefined reference to `vad_process'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj): in function `rec_engine_task':
/home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:287: undefined reference to `get_wakenet_iface'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:299: undefined reference to `get_wakenet_coeff'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:307: undefined reference to `vad_create'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:642: undefined reference to `vad_destroy'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:449: undefined reference to `vad_process'
以下是编译的报错信息, 之前编译应该都是OK的, 就死在了链接环节, 好像是librecorder_engine.a录音引擎库,使用了get_wakenet_iface(), et_wakenet_coeff()以及VAD检测的一些函数,但在链接时未找到.
我如何操作才能让ESP_ADF中的Dueros示例编译通过呢? 谢谢各位大佬.
[6/7] Linking CXX executable esp_dueros.elf
FAILED: esp_dueros.elf
cmd.exe /C "cd . && D:\User\.espressif\tools\xtensa-esp32-elf\esp-2019r2-8.2.0\xtensa-esp32-elf\bin\xtensa-esp32-elf-g++.exe -mlongcalls -Wno-frame-address -nostdlib @CMakeFiles\esp_dueros.elf.rsp -o esp_dueros.elf && cd ."
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe0): undefined reference to `get_wakenet_iface'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe4): undefined reference to `get_wakenet_coeff'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xe8): undefined reference to `vad_create'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xec): undefined reference to `vad_destroy'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj):(.literal.rec_engine_task+0xf4): undefined reference to `vad_process'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: D:/User/Desktop/esp-adf/components/esp-adf-libs/recorder_engine/lib/esp32\librecorder_engine.a(recorder_engine.c.obj): in function `rec_engine_task':
/home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:287: undefined reference to `get_wakenet_iface'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:299: undefined reference to `get_wakenet_coeff'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:307: undefined reference to `vad_create'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:642: undefined reference to `vad_destroy'
d:/user/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.2.0/../../../../xtensa-esp32-elf/bin/ld.exe: /home/houhaiyan/esp-audio-adf-projects/esp-adf-libs-source/recorder_engine/recorder_engine.c:449: undefined reference to `vad_process'