乐鑫技术交流
直播中

张浩

7年用户 1124经验值
私信 关注
[问答]

我需要做些什么来诱导ESP mbedcrypto库来搜索cryptoauthlib呢?

ESP-IDF v4.1.3
CPU:ESP32 Rev 3
我正在将使用 makefile 在 Linux 中构建的应用程序移植到使用 cmake 的 Windows。除了无法诱导 ESP-IDF mbedcrypto 库找到位于我们的 cryptoauthlib 组件中的函数外,构建几乎成功了。
应用程序 CMakeLists.txt 文件包含此开关:add_compile_definitions(MBEDTLS_ECDSA_SIGN_ALT)
告诉 mbedtls 使用 cryptoauthlib 提供的替代签名功能。我使用 objdump 验证 cryptoauthlib 中是否存在函数“mbedtls_ecdsa_sign”。
构建以失败告终:
代码:
cmd.exe /C "cd . && C:Userswesd.espressiftoolsxtensa-esp32-elfesp-2020r3-8.4.0xtensa-esp32-elfbinxtensa-esp32-elf-g++.exe  -mlongcalls -Wno-frame-address   @CMakeFilesww-halo.elf.rsp  -o ww-halo.elf  && cd ."
c:/users/wesd/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a(ecdsa.c.obj):(.literal.ecdsa_sign_det_restartable+0x8): undefined reference to `mbedtls_ecdsa_sign'
c:/users/wesd/.espressif/tools/xtensa-esp32-elf/esp-2020r3-8.4.0/xtensa-esp32-elf/bin/../lib/gcc/xtensa-esp32-elf/8.4.0/../../../../xtensa-esp32-elf/bin/ld.exe: esp-idf/mbedtls/mbedtls/library/libmbedcrypto.a(ecdsa.c.obj): in function `ecdsa_sign_det_restartable':
C:/Users/wesd/dev/ww_halo/halo_fw/esp-idf/components/mbedtls/mbedtls/library/ecdsa.c:489: undefined reference to `mbedtls_ecdsa_sign'
collect2.exe: error: ld returned 1 exit status
我是使用 cmake 的新手 - 我需要做些什么来诱导 ESP mbedcrypto 库来搜索 cryptoauthlib?我试图避免更改 IDF 树中的任何 CMakeLists.txt 文件,但也许这是必要的?

更多回帖

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