aws / aws-iot-device-sdk-embedded-C

SDK for connecting to AWS IoT from a device using embedded C.
MIT License
977 stars 628 forks source link

Problems occur when cross-compiling using wolfssl-5.6.3 to replace openssl-1.1.0 #1895

Open itmanlee opened 11 months ago

itmanlee commented 11 months ago
  1. On the mstar621q platform, complete the cross-compilation of wolfssl5.6.3. The configure execution command is as follows:

step1: ./configure --prefix=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux-uclibcgnueabihf --host=arm-linux CC=arm-buildroot-linux-uclibcgnueabihf-gcc AR=arm-buildroot-linux -uclibcgnueabihf-ar STRIP=arm-buildroot-linux-uclibcgnueabihf-strip RANLIB=arm-buildroot-linux-uclibcgnueabihf-ranlib ARCHFLAGS="-ffunction-sections -fdata-sections -Wl,--gc-sections" --enable- dtls --enable-32bit --enable-opensslextra --enable-all-crypto --enable-static --disable-shared --host=arm-linux

step2: make && make install

  1. Compile aws-iot-device-sdk-embedded-C with the following command:

step1: cmake -S . -Bbuild -DAWS_IOT_ENDPOINT="xxxxxx-xxxx.iot.ap-southeast-1.amazonaws.com" -DROOT_CA_CERT_PATH="/ants_config/hostmgr_autoupgrade/AmazonRootCA1.pem" -DCLIENT_CERT_PATH="/ants_config/hostmgr_autoupgrade/iot- devices.pem.crt" -DCLIENT_PRIVATE_KEY_PATH="/ants_config/hostmgr_autoupgrade/private.pem.key" -DTHING_NAME="test-ipcam-20231027" -DOPENSSL_ROOT_DIR=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux -uclibcgnueabihf -DOPENSSL_INCLUDE_DIR=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux-uclibcgnueabihf/include/wolfssl -DOPENSSL_LIBRARIES=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux-uclibcgnueabihf/lib -DOPENSSL_CRYPTO_LIBRARY=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux-uclibcgnueabihf/lib/libwolfssl.a -DOPENSSL_SSL_LIBRARY=/home/lishiyong/wolfssl-5.6.3/arm-buildroot-linux-uclibcgnueabihf/lib /libwolfssl.a -DCMAKE_TOOLCHAIN_FILE=/opt/mstar-linux/x86-arm/arm-buildroot-linux-uclibcgnueabihf-4.9.4-uclibc-1.0.31/share/buildroot/toolchainfile.cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX= /home/lishiyong/aws-iot/arm-buildroot-linux-uclibcgnueabihf && cd build

step2: make

An error occurred when executing step 2, as shown in the figure below image

image

Please see if you can help me solve this problem

manvensh commented 11 months ago

Hi @itmanlee Thanks for question. Currently, wolfssl is not supported. If you want to use wolfssl, you need to implement something like this https://github.com/aws/aws-iot-device-sdk-embedded-C/blob/main/platform/posix/transport/src/openssl_posix.c

Regards,