[Clfs-support] Binutils for ARM devices

Michele Bucca michele.bucca at gmail.com
Tue Nov 28 23:32:54 PST 2017


 I already have a musl cross-compiler. Now I want to use that
cross compiler to make a musl toolchain that runs on the ARM target.
However when I try to build binutils I get this nasty error about libiberty
(See Below) Can I avoid building libiberty alltoghether?

../binutils-2.27/configure --host=arm-linux-musleabi
--target=arm-linux-musleabi --build=x86_64-linux-gnu --disable-nls
--disable-multilib --prefix=/home/michele/toolchain-arm

The error

make[1]: ingresso nella directory "/home/michele/sources/build-binutils"
> make[2]: ingresso nella directory "/home/michele/sources/build-b
> inutils/libiberty"
> if [ x"" != x ]; then \
>   arm-linux-musleabi-gcc -c -DHAVE_CONFIG_H -g -O2  -I.
> -I../../binutils-2.27/libiberty/../include  -W -Wall -Wwrite-strings
> -Wc++-compat -Wstrict-prototypes -pedantic  -D_GNU_SOURCE
> ../../binutils-2.27/libiberty/strsignal.c -o pic/strsignal.o; \
> else true; fi
> if [ x"" != x ]; then \
>   arm-linux-musleabi-gcc -c -DHAVE_CONFIG_H -g -O2  -I.
> -I../../binutils-2.27/libiberty/../include  -W -Wall -Wwrite-strings
> -Wc++-compat -Wstrict-prototypes -pedantic  -D_GNU_SOURCE
> ../../binutils-2.27/libiberty/strsignal.c -o noasan/strsignal.o; \
> else true; fi
> arm-linux-musleabi-gcc -c -DHAVE_CONFIG_H -g -O2  -I.
> -I../../binutils-2.27/libiberty/../include  -W -Wall -Wwrite-strings
> -Wc++-compat -Wstrict-prototypes -pedantic  -D_GNU_SOURCE
> ../../binutils-2.27/libiberty/strsignal.c -o strsignal.o
> ../../binutils-2.27/libiberty/strsignal.c:554:1: error: conflicting types
> for 'psignal'
>  psignal (int signo, char *message)
>  ^~~~~~~
> In file included from ../../binutils-2.27/libiberty/strsignal.c:22:0:
> /opt/cross/arm-linux-musleabi/include/signal.h:219:6: note: previous
> declaration of 'psignal' was here
>  void psignal(int, const char *);
>       ^~~~~~~
> Makefile:1443: set di istruzioni per l'obiettivo "strsignal.o" non riuscito
> make[2]: *** [strsignal.o] Errore 1
> make[2]: uscita dalla directory "/home/michele/sources/build-b
> inutils/libiberty"
> Makefile:8049: set di istruzioni per l'obiettivo "all-libiberty" non
> riuscito
> make[1]: *** [all-libiberty] Errore 2
> make[1]: uscita dalla directory "/home/michele/sources/build-binutils"
> Makefile:850: set di istruzioni per l'obiettivo "all" non riuscito
> make: *** [all] Errore 2



More information about the Clfs-support mailing list