tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Trouble Cross-Compiling GCC12 (AMD64 host/i386 target)
> I have a Pentium II 350 machine that I run NetBSD 10.1 on. Obviously, it can build for itself, especially since it has a silly 1GB of RAM, but it’s extremely slow, as expected, when building.
>
> So, I use an AMD64 VM , also running NetBSD 10.1, to do the building. I’m having issues cross-compiling GCC12, and wanted to see if anyone else has seen the same issue.
>
> I’m using current stable pkgsrc.
>
> The relevant section of my my.conf looks like this:
>
> # Cross compiling
> #USE_CROSS_COMPILE=yes
> CROSS_MACHINE_ARCH=i386
> TOOLDIR=/home/ajacocks/src/netbsd/10.1/obj.i386/tooldir.NetBSD-10.1-amd64
> CROSS_DESTDIR=/home/ajacocks/src/netbsd/10.1/obj.i386/destdir.i386
> CROSS_OPSYS=NetBSD
> CROSS_LOWER_OPSYS=netbsd
> CROSS_OS_VERSION=10.1
> CROSS_OPSYS_VERSION=101000
> CROSS_LOWER_OPSYS_VERSUFFIX=
> CROSS_LOWER_OS_VARIANT=
> CROSS_LOWER_VARIANT_VERSION=
> CROSS_LOWER_VENDOR=
> CROSS_OBJECT_FMT=ELF
>
> I launch the compile with:
>
> netbsd# cd /usr/pkgsrc/lang/gcc12
> netbsd# USE_CROSS_COMPILE=yes bmake package
> => Bootstrap dependency digest>=20211023: found digest-20220214
> => Fetching gcc-12.4.0.tar.xz
> => Fetching isl-0.16.1.tar.bz2
> => Fetching in-place gmp
> => Bootstrap dependency digest>=20211023: found digest-20220214
> => Fetching gmp-6.3.0.tar.bz2
> => Checksum BLAKE2s OK for gmp-6.3.0.tar.bz2
> => Checksum SHA512 OK for gmp-6.3.0.tar.bz2
> => Fetching in-place
> …
>
> The error comes up here:
>
> gmake[2]: Nothing to be done for 'all'.
> gmake[2]: Leaving directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/c++tools'
> gmake[3]: Entering directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/libcc1'
> gmake[2]: Entering directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/i486--netbsdelf/libgcc'
> gmake[3]: Leaving directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/libcc1'
> gmake[2]: Leaving directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/libcc1'
> # If this is the top-level multilib, build all the other
> # multilibs.
> dest=../.././gcc/include/tmp$$-unwind.h; \
> cp unwind.h $dest; \
> chmod a+r $dest; \
> sh ../../../gcc-12.4.0/libgcc/../move-if-change $dest ../.././gcc/include/unwind.h
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _divsc3.o -MT _divsc3.o -MD -MP -MF _divsc3.dep -DL_divsc3 -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _divdc3.o -MT _divdc3.o -MD -MP -MF _divdc3.dep -DL_divdc3 -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _divxc3.o -MT _divxc3.o -MD -MP -MF _divxc3.dep -DL_divxc3 -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _divtc3.o -MT _divtc3.o -MD -MP -MF _divtc3.dep -DL_divtc3 -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-stgmake[3]: Entering directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/i486--netbsdelf/libgcc'
> rings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixunssfsi.o -MT _fixunssfsi.o -MD -MP -MF _fixunssfsi.dep -DL_fixunssfsi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> rings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixunssfsi.o -MT _fixunssfsi.o -MD -MP -MF _fixunssfsi.dep -DL_fixunssfsi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixunsdfsi.o -MT _fixunsdfsi.o -MD -MP -MF _fixunsdfsi.dep -DL_fixunsdfsi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixunsxfsi.o -MT _fixunsxfsi.o -MD -MP -MF _fixunsxfsi.dep -DL_fixunsxfsi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixsfdi.o -MT _fixsfdi.o -MD -MP -MF _fixsfdi.dep -DL_fixsfdi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> gmake[3]: Leaving directory '/usr/pkgsrc/lang/gcc12/work.NetBSD-10.1-i386/build/i486--netbsdelf/libgcc'
> cc -g -O2 -I/usr/include -O2 -g -O2 -I/usr/include -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -isystem ./include -fpic -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -fpic -I. -I. -I../.././gcc -I../../../gcc-12.4.0/libgcc -I../../../gcc-12.4.0/libgcc/. -I../../../gcc-12.4.0/libgcc/../gcc -I../../../gcc-12.4.0/libgcc/../include -DHAVE_CC_TLS -o _fixdfdi.o -MT _fixdfdi.o -MD -MP -MF _fixdfdi.dep -DL_fixdfdi -c ../../../gcc-12.4.0/libgcc/libgcc2.c -fvisibility=hidden -DHIDE_EXPORTS
> ../../../gcc-12.4.0/libgcc/libgcc2.c: In function '__divsc3':
> ../../../gcc-12.4.0/libgcc/libgcc2.c:1874:16: error: '__LIBGCC_SF_MAX__' undeclared (first use in this function)
> 1874 | # define RBIG (__LIBGCC_SF_MAX__ / 2)
> | ^~~~~~~~~~~~~~~~~
> ../../../gcc-12.4.0/libgcc/libgcc2.c:2063:23: note: in expansion of macro 'RBIG'
> 2063 | if (FABS (d) >= RBIG)
> | ^~~~
> ../../../gcc-12.4.0/libgcc/libgcc2.c:1874:16: note: each undeclared identifier is reported only once for each function it appears in
> 1874 | # define RBIG (__LIBGCC_SF_MAX__ / 2)
> | ^~~~~~~~~~~~~~~~~
> ../../../gcc-12.4.0/libgcc/libgcc2.c:2063:23: note: in expansion of macro 'RBIG'
> 2063 | if (FABS (d) >= RBIG)
> | ^~~~
> ../../../gcc-12.4.0/libgcc/libgcc2.c:1876:17: error: '__LIBGCC_SF_EPSILON__' undeclared (first use in this function)
> 1876 | # define RMIN2 (__LIBGCC_SF_EPSILON__)
> | ^~~~~~~~~~~~~~~~~~~~~
> ../../../gcc-12.4.0/libgcc/libgcc2.c:2073:22: note: in expansion of macro 'RMIN2'
> 2073 | if (FABS (d) < RMIN2)
> | ^~~~~
>
> Has anyone had success cross-compiling gcc12 with current stable pkgsrc?
> On Aug 9, 2025, at 1:08 AM, pl <pl%szwajn.net@localhost> wrote:
>
> To my knowledge not everything can be cross-compiled in pkgsrc, ye probably be better off creating i386 VM instead of trying to troubleshoot what doesn't work.
> --
> pl / Hetzer <pl%szwajn.net@localhost>
Has anyone tried to cross-compile lang/gcc12 on AMD64 targeting i386? Checking, based on the above comment, with the folks on tech-pkg.
- Alex
Home |
Main Index |
Thread Index |
Old Index