Hi,
Thanks for your feedback on loong64's compilation errors.
> > Package: src:gcc-14
> > Version: 14-20240121-1
> > Severity: important
> > Tags: sid trixie ftbfs
> > X-Debbugs-CC: debian-loonga...@lists.debian.org
> >
> > gcc-14 ftbfs on loong64:
> >...
>
> The remaining build failure is now:
>
>
https://buildd.debian.org/status/fetch.php?pkg=gcc-14&arch=loong64&ver=14-20240303-1&stamp=1709485913&raw=0
>
> ...
> dh_installdirs -plibgcc-s1 usr/share/doc/libgcc-s1
usr/lib/loongarch64-linux-gnu
> mv debian/tmp/usr/lib/loongarch64-linux-gnu/libgcc_s.so.1
debian/libgcc-s1/usr/lib/loongarch64-linux-gnu/.
> mv: cannot stat
'debian/tmp/usr/lib/loongarch64-linux-gnu/libgcc_s.so.1': No such file
or directory
> make[1]: *** [debian/rules.d/binary-libgcc.mk:291:
stamps/08-binary-stamp-libgcc] Error 1
- For the compilation error raised by Matthias Klose.
It is because the linux header file linux-libc-dev lacks loong64 support.
The Debian kernel-team has merged the loong64's patch, please see
https://salsa.debian.org/kernel-team/linux/-/merge_requests/879.
- I have reproduced the gcc-14 compilation error locally from Adrian Bunk.
The compilation error is consistent with the feedback from Adrian Bunk.
For gcc-14, the loong64's multilib modification is not included in
gcc-multilib-multiarch.
Please consider the following patch. If you have any questions, you can
contact me at any time.
```
--- a/src/gcc/config/loongarch/t-linux
+++ b/src/gcc/config/loongarch/t-linux
@@ -16,9 +16,9 @@
# along with GCC; see the file COPYING3. If not see
# <http://www.gnu.org/licenses/>.
-MULTIOSDIR_lp64d := ../lib64$(call if_multiarch,:loongarch64-linux-gnu)
-MULTIOSDIR_lp64f := ../lib64/f32$(call
if_multiarch,:loongarch64-linux-gnuf32)
-MULTIOSDIR_lp64s := ../lib64/sf$(call
if_multiarch,:loongarch64-linux-gnusf)
+MULTIOSDIR_lp64d := ../lib$(call if_multiarch,:loongarch64-linux-gnu)
+MULTIOSDIR_lp64f := ../lib/f32$(call
if_multiarch,:loongarch64-linux-gnuf32)
+MULTIOSDIR_lp64s := ../lib/sf$(call if_multiarch,:loongarch64-linux-gnusf)
# Don't define MULTILIB_OSDIRNAMES if multilib is disabled.
ifeq ($(filter LA_DISABLE_MULTILIB,$(tm_defines)),)
```
BTW, the gcc-14 source package was compiled successfully on my local
loong64 rootfs environment, for examples,
```
......
dh_installdirs -plibgcc-s1 usr/share/doc/libgcc-s1
usr/lib/loongarch64-linux-gnu
mv debian/tmp/usr/lib/loongarch64-linux-gnu/libgcc_s.so.1
debian/libgcc-s1/usr/lib/loongarch64-linux-gnu/.
debian/dh_doclink -plibgcc-s1 gcc-14-base
......
dpkg-deb: building package 'libgfortran-14-dev' in
'../libgfortran-14-dev_14-20240201-3_loong64.deb'.
dpkg-deb: building package 'g++-14-loongarch64-linux-gnu' in
'../g++-14-loongarch64-linux-gnu_14-20240201-3_loong64.deb'.
dpkg-deb: building package 'gccrs-14-loongarch64-linux-gnu-dbgsym' in
'../gccrs-14-loongarch64-linux-gnu-dbgsym_14-20240201-3_loong64.deb'.
dpkg-deb: building package 'gcc-14-loongarch64-linux-gnu-dbgsym' in
'../gcc-14-loongarch64-linux-gnu-dbgsym_14-20240201-3_loong64.deb'.
......
make[1]: Leaving directory '/home/zdd/gcc-14/gcc-14-14-20240201'
dpkg-genbuildinfo --build=binary
-O../gcc-14_14-20240201-3_loong64.buildinfo
dpkg-genchanges --build=binary -O../gcc-14_14-20240201-3_loong64.changes
```
thanks,
Dandan Zhang