Bug#566234: [mips only] /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack'
Hi, This bug also affects topal -- see https://buildd.debian.org/fetch.cgi?pkg=topal;ver=70-1;arch=mips;stamp=1265518846 Regards, Phil. -- Phil Brooke OpenPGP key: 1024D/50973B91 2000-12-19 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/alpine.deb.2.00.1002140814210.4...@emerald.lothlann.freeserve.co.uk
Bug#566234: [mips only] /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack'
Hi, I can reproduce the bug by using a qemu MIPS image [1]. Thanks to Aurélien Jarno for providing these images. The reproducer is simple: procedure Alternate is task Test; task body Test is begin null; end; begin null; end Alternate; r...@debian-mips:~/reproducers$ gnatmake alternate.adb gcc-4.4 -c alternate.adb gnatbind -x alternate.ali gnatlink alternate.ali /usr/lib/gcc/mips-linux-gnu/4.4.3/../../../../lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack' collect2: ld returned 1 exit status gnatlink: error when calling /usr/bin/gcc-4.4 gnatmake: *** link failed. The 'Test' task in the reproducer is just there to trigger linkage with GNARL. On MIPS, the reference to '__gnat_alternate_stack' in libgnarl cannot be resolved: /$ objdump -t /usr/lib/debug/usr/lib/libgnarl-4.4.so.1 | grep __gnat_alternate_stack *UND* __gnat_alternate_stack /$ objdump -t /usr/lib/debug/usr/lib/libgnat-4.4.so.1 | grep __gnat_alternate_stack /$ On amd64, '__gnat_alternate_stack' is provided in the bss of libgnat: ~$ objdump -t /usr/lib/debug/usr/lib/libgnarl-4.4.so.1 | grep __gnat_alternate_stack *UND* __gnat_alternate_stack ~$ objdump -t /usr/lib/debug/usr/lib/libgnat-4.4.so.1 | grep __gnat_alternate_stack 00520f80 g O .bss 4000 __gnat_alternate_stack The question is why '__gnat_alternate_stack' is not in the bss segment of libgnat on MIPS. The following #ifdef combination in gcc/ada/init.c looks suspicious: #elif defined (linux) (defined (i386) || defined (__x86_64__) \ || defined (__ia64__) || defined (__powerpc__)) ... #if defined (i386) || defined (__x86_64__) char __gnat_alternate_stack[16 * 1024]; /* 2 * SIGSTKSZ */ #endif ... #endif So gcc/ada/init.c does not provide '__gnat_alternate_stack' when compiled on MIPS, but s-osinte-linux.ads (which is linked into libgnarl) imports it. There seems to be some inconsistency about whether the alternate signal stack should be used on MIPS or not ... - reto [1] - http://people.debian.org/~aurel32/qemu/mips/ -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#566234: [mips only] /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack'
This bug also affects polyorb/2.6.0~20090423-5: gnatbind -I- -x /build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/tools/po_cos_naming/po_cos_naming_shell.ali gnatlink /build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/tools/po_cos_naming/po_cos_naming_shell.ali -Wl,--as-needed -g -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-naming-impl -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-setup -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-naming -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-giop-diop -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-giop-iiop -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-giop-miop -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-dynamicany -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-portableinterceptor -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-moma -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-dsa -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-notification -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-time -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-ir-impl -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-giop -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-iop -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-messaging -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-event-impl -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba-cos-event -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb-corba -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb -o /build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/tools/po_cos_naming/po_cos_naming_shell /usr/lib/gcc/mips-linux-gnu/4.4.3/../../../../lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack' collect2: ld returned 1 exit status gnatlink: error when calling /usr/bin/gcc-4.4 gnatmake: *** link failed. make[1]: *** [tools_po_cos_naming.gpr] Error 4 make[1]: Leaving directory `/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423' make: *** [build-stamp] Error 2 -- Ludovic Brenta. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#566234: [mips only] /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack'
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Ludovic Brenta a écrit : This bug also affects polyorb/2.6.0~20090423-5: snip -L/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/lib -lpolyorb -o /build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423/STATIC/tools/po_cos_naming/po_cos_naming_shell /usr/lib/gcc/mips-linux-gnu/4.4.3/../../../../lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack' collect2: ld returned 1 exit status gnatlink: error when calling /usr/bin/gcc-4.4 gnatmake: *** link failed. make[1]: *** [tools_po_cos_naming.gpr] Error 4 make[1]: Leaving directory `/build/buildd-polyorb_2.6.0~20090423-5-mips-r7mNLt/polyorb-2.6.0~20090423' make: *** [build-stamp] Error 2 Since I'm helping on polyorb packaging I'd like to work on this bug (I'm not a Debian Developer). Can someone give me an access to a mips arch please ? Thanks in advance, xavier -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAktm8MEACgkQVIZi0A5BZF7m/QCbBPOThcd3Z0hgfyKWZNqV/hYr gvAAoLTeRofXKQLWFT9wUslaLJJZDgcg =2KTE -END PGP SIGNATURE- -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Bug#566234: [mips only] /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack'
Package: gnat-4.4 Version: 4.4.2-4 Severity: minor Tags: help X-Debbugs-CC: debian-m...@lists.debian.org Two packages exhibit this mips-specific bug (mipsel is fine): adacontrol/1.9r4-4 gnatbind -shared -E -I- -x /build/buildd/adacontrol-1.9r4/obj/adactl.ali gnatlink /build/buildd/adacontrol-1.9r4/obj/adactl.ali -shared-libgcc -g -g -L/usr/lib -lasis -L/usr/lib -lgnatvsn -o /build/buildd/adacontrol-1.9r4/adactl /usr/lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack' collect2: ld returned 1 exit status gnatlink: error when calling /usr/bin/gcc-4.4 *** link failed libtemplates-parser/11.5-2 gnatbind -E -I- -x /build/buildd/libtemplates-parser-11.5/.build/release/static/tobj/templates2ada.ali gnatlink /build/buildd/libtemplates-parser-11.5/.build/release/static/tobj/templates2ada.ali -L/build/buildd/libtemplates-parser-11.5/.build/release/static/lib -ltemplates_parser -o /build/buildd/libtemplates-parser-11.5/.build/release/static/bin/templates2ada /usr/lib/gcc/mips-linux-gnu/4.4.2/../../../../lib/libgnarl-4.4.so: undefined reference to `__gnat_alternate_stack' collect2: ld returned 1 exit status gnatlink: error when calling /usr/bin/gcc-4.4 gnatmake: *** link failed. I need help to investigate this bug; I have no access to a mips machine since the project machines are all restricted. -- Ludovic Brenta. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org