FAILED: esp-idf/mbedtls/x509_crt_bundle 报错的解决办法及信息来源

2021/11/15更新:最新的esp-idf版本应该已经修复了此问题,本人尝试了一次,直接编译没有问题

在使用ESP-IDF编译工程时遇到如下报错:

FAILED: esp-idf/mbedtls/x509_crt_bundle
cmd.exe /C "cd /D C:\Users\yahsa\Desktop\NTU\FYP\ESP_Workspace\blink\build\esp-idf\mbedtls && C:\Users\yahsa\esp.espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe C:/Users/yahsa/esp/esp-idf/components/mbedtls/esp_crt_bundle/gen_crt_bundle.py --input C:/Users/yahsa/esp/esp-idf/components/mbedtls/esp_crt_bundle/cacrt_all.pem -q"
gen_crt_bundle.py: Invalid certificate in C:/Users/yahsa/esp/esp-idf/components/mbedtls/esp_crt_bundle/cacrt_all.pem
Invalid certificate
ninja: build stopped: subcommand failed.

这个问题是因为cacrt_all.pem文件中的一个证书最近(9月30日)过期,导致编译工程失败。

解决办法为,在idf.py build编译工程之前,输入此命令idf.py menuconfig进行工程配置,按照如下路径进入Certificate Bundle设置中,将Enable trusted root certificate bundle选项取消掉,即不在此工程中启用用受信任的根证书捆绑包。

(Top) > Component config > mbedTLS > Certificate Bundle->Enable trusted root certificate bundle

在VScode中使用ESP-IDF插件也是相同的办法,打开工程后点击左下方齿轮⚙图标即可进行工程配置。

解决办法的信息来源-github链接

posted @ 2021-10-12 10:37  wind-stormger  阅读(1412)  评论(0编辑  收藏  举报