https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104057
--- Comment #5 from cqwrteur <unlvsur at live dot com> --- (In reply to Andrew Pinski from comment #4) > There is also multi-arch too. > I build cross compilers all the time and they find libraries under the > sysroot : > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../libexec/gcc/aarch64- > marvell-linux-gnu/10.1.0/collect2 -plugin > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../libexec/gcc/aarch64- > marvell-linux-gnu/10.1.0/liblto_plugin.so > -plugin-opt=/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../libexec/ > gcc/aarch64-marvell-linux-gnu/10.1.0/lto-wrapper > -plugin-opt=-fresolution=/tmp/ccp36LLm.res -plugin-opt=-pass-through=-lgcc > -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc > -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s > --sysroot=/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64- > marvell-linux-gnu/sys-root --eh-frame-hdr -dynamic-linker > /lib/ld-linux-aarch64.so.1 -X -EL -maarch64linux > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../lib64/crt1.o > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../lib64/crti.o > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/crtbegin.o > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib /tmp/ccDOS00V.o -lgcc --push-state --as-needed > -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/crtend.o > /bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../lib64/crtn.o > > > > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../lib64 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib > > I configured with: > Configured with: /bajas/pinskia/src/toolchain-10/scripts/../src/configure > --disable-fixed-point --without-ppl --without-python --disable-werror > --enable-plugins > --with-lto-plugin-source=/bajas/pinskia/src/toolchain-10/scripts/../gits/gcc/ > lto-plugin --with-system-zlib --with-system-zstd --enable-initfini-array > --disable-source-highlight --with-sysroot > --with-local-prefix=/bajas/pinskia/src/toolchain-10/scripts/../marvell-tools/ > aarch64-marvell-linux-gnu/sys-root --disable-sim --enable-symvers=gnu > --enable-__cxa_atexit --enable-symvers=gnu --enable-__cxa_atexit > --disable-sim --with-multilib-list=lp64,ilp32 --enable-gnu-indirect-function > --target=aarch64-marvell-linux-gnu --enable-languages=c,c++,fortran,go > --prefix=/bajas/pinskia/src/toolchain-10/scripts/../marvell-tools > --with-pkgversion='Marvell Inc. Version: Marvell GCC10 build 1026.0-3b' > --with-bugurl=http://www.marvell.com/support/ > --with-libexpat-prefix=/bajas/pinskia/src/toolchain-10/scripts/../libs > > > I don't see a problem with the search for libs really. It searchs the > correct directories. I even tried with -mabi=ilp32 and I get: > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/ilp32 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib/../ > libilp32 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib/../libilp32 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib/../libilp32 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0 > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../lib/gcc/aarch64- > marvell-linux-gnu/10.1.0/../../../../aarch64-marvell-linux-gnu/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/lib > -L/bajas/pinskia/src/toolchain-10/3b/marvell-tools/bin/../aarch64-marvell- > linux-gnu/sys-root/usr/lib There is a lot of reasons why sysroot should not be set. Like Canadian compilation. The default behavior can be fixed tbh.