Убунта 22.04 aarch64
Компиляем простенький код на С под х86_64:
x86_64-linux-gnu-gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/Generator.d" -MT"src/Generator.o" -o "src/Generator.o" "src/Generator.c" -lm -pthread -static
x86_64-linux-gnu-gcc -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/Uart.d" -MT"src/Uart.o" -o "src/Uart.o" "src/Uart.c"
x86_64-linux-gnu-gcc -o "Generator" ./src/Uart.o ./src/Generator.o -lm -pthread -static
пути линкер цепляет вроде бы корректные, только в них действительно нет искомого:
/usr/lib/gcc-cross/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/bin/ld: cannot find /usr/lib/x86_64-linux-gnu/libm-2.35.a: No such file or directory
/usr/lib/gcc-cross/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/bin/ld: cannot find /usr/lib/x86_64-linux-gnu/libmvec.a: No such file or directory
collect2: error: ld returned 1 exit status
если отключить статичную привязку либ то всё компилится как положено:
file Generator
Generator: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=1b3a24f45fc891bd581d11c35dde178154b8a1e0, for GNU/Linux 3.2.0, with debug_info, not stripped
gcc подкидывал через apt install gcc-x86-64-linux-gnu что в свою очередь привезло вроде как всё что нужно:
binutils-x86-64-linux-gnu cpp-11-x86-64-linux-gnu cpp-x86-64-linux-gnu gcc-11-cross-base
gcc-11-x86-64-linux-gnu gcc-11-x86-64-linux-gnu-base gcc-12-cross-base libasan6-amd64-cross
libatomic1-amd64-cross libc6-amd64-cross libc6-dev-amd64-cross libgcc-11-dev-amd64-cross
libgcc-s1-amd64-cross libgomp1-amd64-cross libitm1-amd64-cross liblsan0-amd64-cross
libquadmath0-amd64-cross libstdc++6-amd64-cross libtsan0-amd64-cross libubsan1-amd64-cross
linux-libc-dev-amd64-cross
потом еще подкинул из suggested gcc-11-multilib-x86-64-linux-gnu
вопрос - как полечить?