Re: Problem cross-compiling gcc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12.02.2023 21:01, Kai Ruottu wrote:
Christer Solskogen via Gcc-help kirjoitti 12.2.2023 klo 19.51:
While cross compiling gcc with musl I see this:

checking for exported symbols... /home/solskogen/gcc/libcc1/configure: line 15053: -T: command not found
yes
checking for -rdynamic... /home/solskogen/gcc/libcc1/configure: line 15063: -T: command not found
no
checking for library containing dlopen... none required
checking for -fPIC -shared... yes
configure: error:
   Building GCC with plugin support requires a host that supports
   -fPIC, -shared, -ldl and -rdynamic.
make[1]: *** [Makefile:11890: configure-libcc1] Error 1

This is the configure line: /home/solskogen/gcc/configure --prefix=/usr --libexecdir=/lib --host=aarch64-centrix-linux-musl --target=aarch64-centrix-linux-musl --build=x86_64-pc-linux-gnu

What is intersting in this case is WHICH GCC the build tries to use when compiling libgcc. It should be the 'aarch64-centrix-linux-musl' targeted cross-GCC, used for the becoming $host system to create the executables and libraries for it. So what are the CC_FOR_TARGET, GCC_FOR_TARGET, CXX_FOR_TARGET and GXX_FOR_TARGET in the main Makefile and in the one used for libgcc?  My habit has been years to define these in environment before running configure. Maybe these simply don't work in the "native Canadian Cross" case. (To create a native
GCC with a cross-GCC).



I see this in configure:
Configuring in ./libcc1
configure: loading cache ./config.cache
checking build system type... x86_64-pc-linux-gnu
checking host system type... aarch64-centrix-linux-musl
checking target system type... aarch64-centrix-linux-musl
checking for aarch64-centrix-linux-musl-gcc... aarch64-centrix-linux-musl-gcc
checking whether the C compiler works... yes


Which *should* mean that it finds the correct compiler. In the Makefile I see this:

CC = aarch64-centrix-linux-musl-gcc
CXX = aarch64-centrix-linux-musl-g++
GCC_FOR_TARGET=$(STAGE_CC_WRAPPER) aarch64-centrix-linux-musl-gcc
CXX_FOR_TARGET=$(STAGE_CC_WRAPPER) aarch64-centrix-linux-musl-c++
CC_FOR_TARGET=$(STAGE_CC_WRAPPER) aarch64-centrix-linux-musl-gcc

All of the other tools also have the aarch64-centrix-linux-musl- prefix as well, so as far as I understand this *should* work.




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux