Cross compiler error

Hi all, I’m trying to compile assembler code from my x86 machine with cross compiler but I receive this error (with verbose -v option):

>arm-suse-linux-gnueabi-gcc esempio.s -static -v 
Using built-in specs.
COLLECT_GCC=arm-suse-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/arm-suse-linux-gnueabi/10/lto-wrapper
Target: arm-suse-linux-gnueabi
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++ --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/10 --enable-ssp --disable-libssp --disable-libvtv --enable-cet=auto --disable-libcc1 --disable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-10 --program-prefix=arm-suse-linux-gnueabi- --target=arm-suse-linux-gnueabi --disable-nls --with-sysroot=/usr/arm-suse-linux-gnueabi --with-build-sysroot=/usr/arm-suse-linux-gnueabi --with-build-time-tools=/usr/arm-suse-linux-gnueabi/bin --with-arch=armv6zk --with-tune=arm1176jzf-s --with-float=hard --with-abi=aapcs-linux --with-fpu=vfp --disable-sjlj-exceptions --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.2.1 20201202 [revision e563687cf9d3d1278f45aaebd03e0f66531076c9] (SUSE Linux) 
COLLECT_GCC_OPTIONS='-static' '-v'  '-mtune=arm1176jzf-s' '-mfloat-abi=hard' '-mfpu=vfp' '-mabi=aapcs-linux' '-mtls-dialect=gnu' '-marm' '-march=armv6zk+fp'
 /usr/lib64/gcc/arm-suse-linux-gnueabi/10/as -v -march=armv6zk -mfloat-abi=hard -mfpu=vfp -meabi=5 -o /tmp/ccrYIXwV.o esempio.s
GNU assembler version 2.35.1 (arm-suse-linux-gnueabi) using BFD version (GNU Binutils; openSUSE Tumbleweed) 2.35.1.20201112-1
COMPILER_PATH=/usr/lib64/gcc/arm-suse-linux-gnueabi/10/:/usr/lib64/gcc/arm-suse-linux-gnueabi/10/:/usr/lib64/gcc/arm-suse-linux-gnueabi/:/usr/lib64/gcc/arm-suse-linux-gnueabi/10/:/usr/lib64/gcc/arm-suse-linux-gnueabi/:/usr/lib64/gcc/arm-suse-linux-gnueabi/10/../../../../arm-suse-linux-gnueabi/bin/
LIBRARY_PATH=/usr/lib64/gcc/arm-suse-linux-gnueabi/10/:/usr/lib64/gcc/arm-suse-linux-gnueabi/10/../../../../arm-suse-linux-gnueabi/lib/:/usr/arm-suse-linux-gnueabi/lib/
COLLECT_GCC_OPTIONS='-static' '-v'  '-mtune=arm1176jzf-s' '-mfloat-abi=hard' '-mfpu=vfp' '-mabi=aapcs-linux' '-mtls-dialect=gnu' '-marm' '-march=armv6zk+fp'
 /usr/lib64/gcc/arm-suse-linux-gnueabi/10/collect2 -plugin /usr/lib64/gcc/arm-suse-linux-gnueabi/10/liblto_plugin.so -plugin-opt=/usr/lib64/gcc/arm-suse-linux-gnueabi/10/lto-wrapper -plugin-opt=-fresolution=/tmp/ccYm7paX.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_eh -plugin-opt=-pass-through=-lc --sysroot=/usr/arm-suse-linux-gnueabi --build-id -Bstatic -X -m armelf_linux_eabi crt1.o crti.o crtbeginT.o -L/usr/lib64/gcc/arm-suse-linux-gnueabi/10 -L/usr/lib64/gcc/arm-suse-linux-gnueabi/10/../../../../arm-suse-linux-gnueabi/lib -L/usr/arm-suse-linux-gnueabi/lib /tmp/ccrYIXwV.o --start-group -lgcc -lgcc_eh -lc --end-group crtend.o crtn.o
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find crt1.o: File o directory non esistente
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find crti.o: File o directory non esistente
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find crtbeginT.o: File o directory non esistente
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find -lgcc
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find -lgcc_eh
/usr/lib64/gcc/arm-suse-linux-gnueabi/10/ld: cannot find -lc
collect2: error: ld returned 1 exit status

What can I do? Thanks

Your error message indicates that the cross compile environment you’re using is not properly set up. Which cross compiler are you using? What packages do you have installed?

I’m typically using the cross compilers provided by ARM, e.g. from https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-a/downloads and unpack them to a local directory in my home, but other setups might also work.

Perfect, I’ve tried with this compiler and all worked good, thanks!

Before, when I was getting the errors, I was trying with arm-suse-linux-gnueabi-gcc from suse repo, but maybe I had to configured it in some way…