Howdy,
I am working on packaging the azure-iot-sdk-c for rust. The work was based on existing work made by a community member. Which was forked here.
The project target an amv7 processor and therefore, a yocto SDK was generated. The config.toml specify the rootfs and linked:
[target.armv7-unknown-linux-gnueabihf]
linker="arm-poky-linux-gnueabi-gcc"
ar="arm-poky-linux-gnueabi-ar"
rustflags = [
"-C", "link-arg=-march=armv7",
"-C", "link-arg=-mfloat-abi=hard",
"-C", "link-arg=-mthumb",
"-C", "link-arg=-mfpu=neon-vfpv4",
"-C", "link-arg=-mfloat-abi=hard",
"-C", "link-arg=-mcpu=cortex-a5",
"-C", "link-arg=--sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-agsolar-linux-gnueabi",
]
When starting the build I source the yocto sdk environment file. Then call $ cargo build --target armv7-unknown-linux-gnueabihf
.
The build then fails:
error: failed to run custom build command for `azure-iot-rs-sys v0.0.0 (/home/user/workspace/azure-iot-rs-sys)`
Caused by:
process didn't exit successfully: `/home/user/workspace/azure-iot-rs-sys/target/debug/build/azure-iot-rs-sys-dd8f230217101d41/build-script-build` (exit status: 101)
--- stdout
cargo:rerun-if-changed=wrapper.h
cargo:rerun-if-changed=build.rs
cargo:rustc-link-search=native=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib
cargo:rustc-link-lib=uuid
cargo:rustc-link-search=native=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib
cargo:rustc-link-lib=ssl
cargo:rustc-link-lib=crypto
cargo:rustc-link-search=native=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib
cargo:rustc-link-lib=curl
running: cd "/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build" && CMAKE_PREFIX_PATH="" "cmake" "/home/user/workspace/azure-iot-rs-sys/azure-iot-sdk-c" "-Duse_edge_modules=ON" "-DCMAKE_SYSTEM_NAME=Linux" "-DCMAKE_SYSTEM_PROCESSOR=arm" "-DCMAKE_INSTALL_PREFIX=/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -fPIC -march=armv7-a -mfpu=vfpv3-d16 -pipe -feliminate-unused-debug-types" "-DCMAKE_C_COMPILER=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -fPIC -march=armv7-a -mfpu=vfpv3-d16 -pipe -feliminate-unused-debug-types" "-DCMAKE_CXX_COMPILER=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -march=armv7-a -mfpu=vfpv3-d16 -pipe -feliminate-unused-debug-types" "-DCMAKE_ASM_COMPILER=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc" "-DCMAKE_BUILD_TYPE=Debug"
-- Toolchain file defaulted to '/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/share/cmake/OEToolchainConfig.cmake'
-- The C compiler identification is GNU 11.2.0
-- The CXX compiler identification is GNU 11.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
-- Check for working C compiler: /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc - broken
-- Configuring incomplete, errors occurred!
See also "/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/CMakeOutput.log".
See also "/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/CMakeError.log".
--- stderr
CMake Error at /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/share/cmake-3.22/Modules/CMakeTestCCompiler.cmake:69 (message):
The C compiler
"/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc"
is not able to compile a simple test program.
It fails with the following output:
Change Dir: /home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5c143/fast && /usr/bin/gmake -f CMakeFiles/cmTC_5c143.dir/build.make CMakeFiles/cmTC_5c143.dir/build
gmake[1]: Entering directory '/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -o CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o -c /home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_5c143
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5c143.dir/link.txt --verbose=1
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o -o cmTC_5c143
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: error: cmTC_5c143 uses VFP register arguments, CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o does not
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: failed to merge target specific data of file CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o
collect2: error: ld returned 1 exit status
gmake[1]: *** [CMakeFiles/cmTC_5c143.dir/build.make:99: cmTC_5c143] Error 1
gmake[1]: Leaving directory '/home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_5c143/fast] Error 2
CMakeOutput.log:
The target system is: Linux - - cortexa5t2hf-neon-vfpv4-agsolar
The host system is: Linux - 5.15.0-56-generic - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
Build flags: ;-O2;-pipe;-g;-feliminate-unused-debug-types;
Id flags: -c
The output was:
0
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "CMakeCCompilerId.o"
The C compiler identification is GNU, found in "/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/3.22.3/CompilerIdC/CMakeCCompilerId.o"
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++
Build flags: ;-O2;-pipe;-g;-feliminate-unused-debug-types;
Id flags: -c
The output was:
0
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "CMakeCXXCompilerId.o"
The CXX compiler identification is GNU, found in "/home/user/workspace/azure-iot-rs-sys/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-sys-e762df3e497105be/out/build/CMakeFiles/3.22.3/CompilerIdCXX/CMakeCXXCompilerId.o"
CMakeError.log:
Compiling the C compiler identification source file "CMakeCCompilerId.c" failed.
Compiler: /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
Build flags: ;-O2;-pipe;-g;-feliminate-unused-debug-types;
Id flags:
The output was:
1
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find Scrt1.o: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find crti.o: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find crtbeginS.o: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find -lgcc: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find -lgcc_s: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find -lc: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find -lgcc: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find -lgcc_s: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find crtendS.o: No such file or directory
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: cannot find crtn.o: No such file or directory
collect2: error: ld returned 1 exit status
Detecting C compiler ABI info failed to compile with the following output:
Change Dir: /home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e80c7/fast && /usr/bin/gmake -f CMakeFiles/cmTC_e80c7.dir/build.make CMakeFiles/cmTC_e80c7.dir/build
gmake[1]: Entering directory '/home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -v -o CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o -c /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c
Using built-in specs.
COLLECT_GCC=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
Target: arm-poky-linux-gnueabi
Configured with: ../../../../../../work-shared/gcc-11.2.0-r0/gcc-11.2.0/configure --build=x86_64-linux --host=x86_64-pokysdk-linux --target=arm-poky-linux-gnueabi --prefix=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr --exec_prefix=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr --bindir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --sbindir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --libexecdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi --datadir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share --sysconfdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/etc --sharedstatedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/com --localstatedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/var --libdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi --includedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/include --oldincludedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/include --infodir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share/info --mandir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share/man --disable-silent-rules --disable-dependency-tracking --with-libtool-sysroot=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot --with-gnu-ld --enable-shared --enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-default-pie --enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch --program-prefix=arm-poky-linux-gnueabi- --without-local-prefix --disable-install-libiberty --disable-libssp --enable-libitm --enable-lto --disable-bootstrap --with-system-zlib --with-linker-hash-style=gnu --enable-linker-build-id --with-ppl=no --with-cloog=no --enable-checking=release --enable-cheaders=c_global --without-isl --with-gxx-include-dir=/not/exist/usr/include/c++/11.2.0 --with-build-time-tools=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot-native/usr/arm-poky-linux-gnueabi/bin --with-sysroot=/not/exist --with-build-sysroot=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot --enable-standard-branch-protection --enable-poison-system-directories --disable-static --enable-nls --with-glibc-version=2.28 --enable-initfini-array
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (GCC)
COLLECT_GCC_OPTIONS='-O2' '-pipe' '-g' '-feliminate-unused-debug-types' '-v' '-o' 'CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o' '-c' '-mcpu=arm10tdmi' '-mtls-dialect=gnu' '-marm' '-mlibarch=armv5t' '-march=armv5t' '-dumpdir' 'CMakeFiles/cmTC_e80c7.dir/'
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/cc1 -quiet -v -isysroot /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_e80c7.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mcpu=arm10tdmi -mtls-dialect=gnu -marm -mlibarch=armv5t -march=armv5t -g -O2 -version -feliminate-unused-debug-types -o - |
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/as -v -march=armv5t -meabi=5 -o CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o
GNU assembler version 2.38 (arm-poky-linux-gnueabi) using BFD version (GNU Binutils) 2.38.20220313
GNU C17 (GCC) version 11.2.0 (arm-poky-linux-gnueabi)
compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version none
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0/include"
ignoring nonexistent directory "/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/local/include"
ignoring nonexistent directory "/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/../../../../../arm-poky-linux-gnueabi/include"
#include "..." search starts here:
#include <...> search starts here:
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/include
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/include-fixed
/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/include/
End of search list.
GNU C17 (GCC) version 11.2.0 (arm-poky-linux-gnueabi)
compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version none
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 7994d289578098be2268888ae5a0a192
COMPILER_PATH=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/
LIBRARY_PATH=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/lib/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/
COLLECT_GCC_OPTIONS='-O2' '-pipe' '-g' '-feliminate-unused-debug-types' '-v' '-o' 'CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o' '-c' '-mcpu=arm10tdmi' '-mtls-dialect=gnu' '-marm' '-mlibarch=armv5t' '-march=armv5t' '-dumpdir' 'CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.'
Linking C executable cmTC_e80c7
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e80c7.dir/link.txt --verbose=1
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now -v CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o -o cmTC_e80c7
Using built-in specs.
COLLECT_GCC=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/lto-wrapper
Target: arm-poky-linux-gnueabi
Configured with: ../../../../../../work-shared/gcc-11.2.0-r0/gcc-11.2.0/configure --build=x86_64-linux --host=x86_64-pokysdk-linux --target=arm-poky-linux-gnueabi --prefix=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr --exec_prefix=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr --bindir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --sbindir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --libexecdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi --datadir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share --sysconfdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/etc --sharedstatedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/com --localstatedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/var --libdir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi --includedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/include --oldincludedir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/include --infodir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share/info --mandir=/usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/usr/share/man --disable-silent-rules --disable-dependency-tracking --with-libtool-sysroot=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot --with-gnu-ld --enable-shared --enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-default-pie --enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch --program-prefix=arm-poky-linux-gnueabi- --without-local-prefix --disable-install-libiberty --disable-libssp --enable-libitm --enable-lto --disable-bootstrap --with-system-zlib --with-linker-hash-style=gnu --enable-linker-build-id --with-ppl=no --with-cloog=no --enable-checking=release --enable-cheaders=c_global --without-isl --with-gxx-include-dir=/not/exist/usr/include/c++/11.2.0 --with-build-time-tools=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot-native/usr/arm-poky-linux-gnueabi/bin --with-sysroot=/not/exist --with-build-sysroot=/workdir/meta-poky/build-microchip/tmp/work/x86_64-nativesdk-pokysdk-linux/gcc-cross-canadian-arm/11.2.0-r0/recipe-sysroot --enable-standard-branch-protection --enable-poison-system-directories --disable-static --enable-nls --with-glibc-version=2.28 --enable-initfini-array
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (GCC)
COMPILER_PATH=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/
LIBRARY_PATH=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/lib/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0/:/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/
COLLECT_GCC_OPTIONS='-O2' '-pipe' '-g' '-feliminate-unused-debug-types' '-v' '-o' 'cmTC_e80c7' '-mcpu=arm10tdmi' '-mtls-dialect=gnu' '-marm' '-mlibarch=armv5t' '-march=armv5t' '-dumpdir' 'cmTC_e80c7.'
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/collect2 -plugin /opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/liblto_plugin.so -plugin-opt=/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccH2ShEh.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi --build-id --eh-frame-hdr --hash-style=gnu -dynamic-linker /lib/ld-linux.so.3 -X -m armelf_linux_eabi -pie -o cmTC_e80c7 /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/Scrt1.o /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/crti.o /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0/crtbeginS.o -L/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0 -L/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/lib -L/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0 -L/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib -O1 --hash-style=gnu --as-needed -z relro -z now CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/arm-poky-linux-gnueabi/11.2.0/crtendS.o /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/crtn.o
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: error: cmTC_e80c7 uses VFP register arguments, CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o does not
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: failed to merge target specific data of file CMakeFiles/cmTC_e80c7.dir/CMakeCCompilerABI.c.o
collect2: error: ld returned 1 exit status
gmake[1]: *** [CMakeFiles/cmTC_e80c7.dir/build.make:99: cmTC_e80c7] Error 1
gmake[1]: Leaving directory '/home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_e80c7/fast] Error 2
Determining if the C compiler works failed with the following output:
Change Dir: /home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_5c143/fast && /usr/bin/gmake -f CMakeFiles/cmTC_5c143.dir/build.make CMakeFiles/cmTC_5c143.dir/build
gmake[1]: Entering directory '/home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -o CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o -c /home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp/testCCompiler.c
Linking C executable cmTC_5c143
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_5c143.dir/link.txt --verbose=1
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc --sysroot=/opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi -O2 -pipe -g -feliminate-unused-debug-types -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-z,relro,-z,now CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o -o cmTC_5c143
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: error: cmTC_5c143 uses VFP register arguments, CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o does not
/opt/poky/sdk/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/11.2.0/real-ld: failed to merge target specific data of file CMakeFiles/cmTC_5c143.dir/testCCompiler.c.o
collect2: error: ld returned 1 exit status
gmake[1]: *** [CMakeFiles/cmTC_5c143.dir/build.make:99: cmTC_5c143] Error 1
gmake[1]: Leaving directory '/home/user/workspace/azure-iot-rs-bindgen/target/armv7-unknown-linux-gnueabihf/debug/build/azure-iot-rs-bindgen-e762df3e497105be/out/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_5c143/fast] Error 2
The binaries listed in the CMakeError.log, does exist in the sdk at both localtion:
- /opt/poky/sdk/sysroots/x86_64-agsolarsdk-linux/usr/lib
- /opt/poky/sdk/sysroots/cortexa5t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib
The cortex path is already in the cargo:rustc-link-search=native, so it should find the libraries.
Any input on what could be wrong?
Thanks