KAA 0.10.0中的ESP8266 SDK编译错误 [英] Compile error with ESP8266 SDK in KAA 0.10.0
问题描述
我已经根据但是编译报告显示以下错误. Attachemnt是ld文件.您能帮我解决吗?非常感谢!
But the compile report shows the error below. Attachemnt is the ld file. Would you please help me to resolve it? Thanks a lot!
/opt/Espressif/crosstool-NG/builds/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: esp8266_app section `.text' will not fit in region `iram1_0_seg'
/opt/Espressif/crosstool-NG/builds/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld: region `iram1_0_seg' overflowed by 43955 bytes
kaa/tools/kaa_encryption/rsa_key_gen/mbedtls/libmbedtls.a(entropy_poll.c.obj):(.text.mbedtls_platform_entropy_poll+0x8): undefined reference to `fopen'
kaa/tools/kaa_encryption/rsa_key_gen/mbedtls/libmbedtls.a(entropy_poll.c.obj):(.text.mbedtls_platform_entropy_poll+0xc): undefined reference to `fread'
kaa/tools/kaa_encryption/rsa_key_gen/mbedtls/libmbedtls.a(entropy_poll.c.obj):(.text.mbedtls_platform_entropy_poll+0x10): undefined reference to `fclose'
kaa/tools/kaa_encryption/rsa_key_gen/mbedtls/libmbedtls.a(entropy_poll.c.obj): In function `mbedtls_platform_entropy_poll':
entropy_poll.c:(.text.mbedtls_platform_entropy_poll+0x33): undefined reference to `fopen'
entropy_poll.c:(.text.mbedtls_platform_entropy_poll+0x48): undefined reference to `fread'
entropy_poll.c:(.text.mbedtls_platform_entropy_poll+0x56): undefined reference to `fclose'
entropy_poll.c:(.text.mbedtls_platform_entropy_poll+0x62): undefined reference to `fclose'
collect2: error: ld returned 1 exit status
make[2]: *** [esp8266_app] Error 1
make[1]: *** [CMakeFiles/esp8266_app.dir/all] Error 2
make: *** [all] Error 2
问候 鲍比
推荐答案
要为ESP8266平台正确构建C SDK应用程序,请使用-DWITH_ENCRYPTION=OFF
CMake命令行参数禁用加密功能.
To build the C SDK application correctly for the ESP8266 platform, disable the Encryption feature with -DWITH_ENCRYPTION=OFF
CMake command line argument.
此外,禁用未使用的SDK扩展.例如,要禁用通知扩展,应将-DWITH_EXTENSION_NOTIFICATION=OFF
传递给CMake.有关C SDK构建配置的更多信息,请参见此文件- https://github.com/kaaproject/kaa/blob/master/client/client-multi/client-c/CMakeLists.txt
Furthermore, disable unused SDK extensions. For example, to disable the notification extension, you should pass the -DWITH_EXTENSION_NOTIFICATION=OFF
to CMake. For more information about C SDK build configuration, see this file -- https://github.com/kaaproject/kaa/blob/master/client/client-multi/client-c/CMakeLists.txt
此外,别忘了将-DCMAKE_BUILD_TYPE=MinSizeRel
传递给CMake,以便对生成的可执行文件进行大小优化.
Also, don't forget to pass the -DCMAKE_BUILD_TYPE=MinSizeRel
to CMake so that the resulting executable will be optimized for size.
这篇关于KAA 0.10.0中的ESP8266 SDK编译错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!