Debian Bug report logs -
#476302
iceweasel: ftbfs on armel: temporary object destruction order
Toggle useless messages
Report forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Jon Dowland <jon+bts@alcopop.org>:
New Bug report received and forwarded. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: iceweasel
Version: 3.0~b5-1
Severity: normal
...
checking for unwind.h... yes
checking for _Unwind_Backtrace... yes
checking for gcc -pipe support... yes
checking whether compiler supports -Wno-long-long... yes
checking whether C compiler supports -fprofile-generate... yes
checking for correct temporary object destruction order... no
configure: error: Your compiler does not follow the C++ specification
for temporary object destruction order.
make: *** [config.status] Error 1
dpkg-buildpackage: failure: debian/rules build gave error exit status 2
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: armel (armv5tel)
Kernel: Linux 2.6.24-1-iop32x
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Jon Dowland <jon+bts@alcopop.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #10 received at 474281@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
config.log attached.
ii g++ 4:4.3.0-3 The GNU
ii g++-4.3 4.3.0-2 The GNU
ii gcc 4:4.3.0-3 The GNU C
ii gcc-4.2-base 4.2.3-3 The GNU
ii gcc-4.3 4.3.0-2 The GNU C
ii gcc-4.3-base 4.3.0-2 The GNU
[config.log (text/plain, attachment)]
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Jon Dowland <jon@alcopop.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #15 received at 474281@bugs.debian.org (full text, mbox, reply):
# Automatically generated email from bts, devscripts version 2.10.20
# I forgot armel isn't a released arch yet
severity 474281 normal
Severity set to `normal' from `normal'
Request was from Jon Dowland <jon@alcopop.org>
to control@bugs.debian.org.
(Fri, 04 Apr 2008 18:33:21 GMT) (full text, mbox, link).
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Mike Hommey <mh@glandium.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #22 received at 474281@bugs.debian.org (full text, mbox, reply):
On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
WTF?!? There's not even wchar_t in the source
> /usr/bin/ld: failed to merge target specific data of file /tmp/ccef8aU1.o
> collect2: ld returned 1 exit status
> configure: failed program was:
> #line 17686 "configure"
> #include "confdefs.h"
> class A {
> public: A(int& x) : mValue(x) {}
> ~A() { mValue--; }
> operator char**() { return 0; }
> private: int& mValue;
> };
> void func(char **arg) {}
> int m=2;
> void test() {
> func(A(m));
> if (m==1) m = 0;
> }
> int main() {
> test();
> return(m);
> }
>
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Jon Dowland <jon+bts@alcopop.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #27 received at 474281@bugs.debian.org (full text, mbox, reply):
On Fri, Apr 04, 2008 at 09:31:27PM +0200, Mike Hommey wrote:
> On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> > configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> > /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
>
> WTF?!? There's not even wchar_t in the source
I know bugger all about c++ but I'm plodding on, since there's no
experimental buildd for armel yet.
19:32 < suihkulokki> Jon: The problem is -fshort-wchar option, you would
need to hack the configure scripts to not enable it
I'm just trying to disable that chunk of stuff in configure.in and
regenerate the makefiles, then try again.
--
Jon Dowland
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Mike Hommey <mh@glandium.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #32 received at 474281@bugs.debian.org (full text, mbox, reply):
On Fri, Apr 04, 2008 at 08:50:31PM +0100, Jon Dowland wrote:
> On Fri, Apr 04, 2008 at 09:31:27PM +0200, Mike Hommey wrote:
> > On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> > > configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> > > /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
> >
> > WTF?!? There's not even wchar_t in the source
>
> I know bugger all about c++ but I'm plodding on, since there's no
> experimental buildd for armel yet.
>
> 19:32 < suihkulokki> Jon: The problem is -fshort-wchar option, you would
> need to hack the configure scripts to not enable it
>
> I'm just trying to disable that chunk of stuff in configure.in and
> regenerate the makefiles, then try again.
On the other hand, it builds this correctly:
configure:8114: checking for compiler -fshort-wchar option
configure:8128: c++ -c -fno-strict-aliasing -fshort-wchar conftest.C 1>&5
This being generated by the following configure.in snippet:
[AC_TRY_COMPILE([#include <stddef.h>
$configure_static_assert_macros],
[CONFIGURE_STATIC_ASSERT(sizeof(wchar_t) == 2);
CONFIGURE_STATIC_ASSERT((wchar_t)-1 > (wchar_t) 0)],
ac_cv_have_usable_wchar_option_v2="yes",
ac_cv_have_usable_wchar_option_v2="no")])
This snippet is responsible for the addition of -fshort-wchar in the CXX_FLAGS in
what is failing for you.
Mike
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Mike Hommey <mh@glandium.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #39 received at 474281@bugs.debian.org (full text, mbox, reply):
On Fri, Apr 04, 2008 at 10:08:28PM +0200, Mike Hommey wrote:
> On Fri, Apr 04, 2008 at 08:50:31PM +0100, Jon Dowland wrote:
> > On Fri, Apr 04, 2008 at 09:31:27PM +0200, Mike Hommey wrote:
> > > On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> > > > configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> > > > /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
> > >
> > > WTF?!? There's not even wchar_t in the source
> >
> > I know bugger all about c++ but I'm plodding on, since there's no
> > experimental buildd for armel yet.
> >
> > 19:32 < suihkulokki> Jon: The problem is -fshort-wchar option, you would
> > need to hack the configure scripts to not enable it
> >
> > I'm just trying to disable that chunk of stuff in configure.in and
> > regenerate the makefiles, then try again.
>
> On the other hand, it builds this correctly:
> configure:8114: checking for compiler -fshort-wchar option
> configure:8128: c++ -c -fno-strict-aliasing -fshort-wchar conftest.C 1>&5
>
> This being generated by the following configure.in snippet:
> [AC_TRY_COMPILE([#include <stddef.h>
> $configure_static_assert_macros],
> [CONFIGURE_STATIC_ASSERT(sizeof(wchar_t) == 2);
> CONFIGURE_STATIC_ASSERT((wchar_t)-1 > (wchar_t) 0)],
> ac_cv_have_usable_wchar_option_v2="yes",
> ac_cv_have_usable_wchar_option_v2="no")])
>
> This snippet is responsible for the addition of -fshort-wchar in the CXX_FLAGS in
> what is failing for you.
And both tests have not changed for a while, and xulrunner build fine on
armel in unstable [1]
Could you try to use the same toolchain as when xulrunner was built ?
i.e. gcc-4.2_4.2.3-2 g++-4.2_4.2.3-2 binutils_2.18.1~cvs20080103-1
Mike
1. http://buildd.debian.org/fetch.cgi?pkg=xulrunner;ver=1.8.1.12-5;arch=armel;stamp=1206621388
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Riku Voipio <riku.voipio@iki.fi>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #44 received at 474281@bugs.debian.org (full text, mbox, reply):
On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
Notice the error happens at linking time
> On the other hand, it builds this correctly:
> configure:8114: checking for compiler -fshort-wchar option
> configure:8128: c++ -c -fno-strict-aliasing -fshort-wchar conftest.C 1>&5
...and 'c++ -c' specifically does _not_ link.
$ cat test.c
#include <stddef.h>
#include <wchar.h>
int main() {
; return 0; }
all6500-2:~/icew
$ c++ -c -fno-strict-aliasing -fshort-wchar test.c
$ echo $?
0
$ c++ -fno-strict-aliasing -fshort-wchar test.c
/usr/bin/ld: ERROR: /tmp/ccKVwN1s.o: Conflicting definitions of wchar_t
/usr/bin/ld: failed to merge target specific data of file
/tmp/ccKVwN1s.o
collect2: ld returned 1 exit status
> And both tests have not changed for a while, and xulrunner build fine on
> armel in unstable [1]
FWIW xulrunner/iceweasel based on FF 2.0 does not work (even if it
compiles) on armel. That's why we are looking at getting FF3.0
compiled. The nokia internet tablets are based on armel and and
have browser based on FF3.0 alpha, so it would seem more feasible
to get FF3.0 working than backporting the support to 2.0..
> Could you try to use the same toolchain as when xulrunner was built ?
> i.e. gcc-4.2_4.2.3-2 g++-4.2_4.2.3-2 binutils_2.18.1~cvs20080103-1
A quick test confirms, test.c compiles fine with g++-4.2, but fails with
g++-4.3.
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Mike Hommey <mh@glandium.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #49 received at 474281@bugs.debian.org (full text, mbox, reply):
On Sat, Apr 05, 2008 at 12:13:45AM +0300, Riku Voipio wrote:
> On Fri, Apr 04, 2008 at 07:22:07PM +0100, Jon Dowland wrote:
> > configure:17706: c++ -o conftest -fno-strict-aliasing -fshort-wchar -pthread -pipe -lpthread -Wl,--as-needed conftest.C -ldl -lm 1>&5
> > /usr/bin/ld: ERROR: /tmp/ccef8aU1.o: Conflicting definitions of wchar_t
>
> Notice the error happens at linking time
>
> > On the other hand, it builds this correctly:
> > configure:8114: checking for compiler -fshort-wchar option
> > configure:8128: c++ -c -fno-strict-aliasing -fshort-wchar conftest.C 1>&5
>
> ...and 'c++ -c' specifically does _not_ link.
>
> $ cat test.c
> #include <stddef.h>
> #include <wchar.h>
>
> int main() {
> ; return 0; }
> all6500-2:~/icew
> $ c++ -c -fno-strict-aliasing -fshort-wchar test.c
> $ echo $?
> 0
> $ c++ -fno-strict-aliasing -fshort-wchar test.c
> /usr/bin/ld: ERROR: /tmp/ccKVwN1s.o: Conflicting definitions of wchar_t
> /usr/bin/ld: failed to merge target specific data of file
> /tmp/ccKVwN1s.o
> collect2: ld returned 1 exit status
>
> > And both tests have not changed for a while, and xulrunner build fine on
> > armel in unstable [1]
>
> FWIW xulrunner/iceweasel based on FF 2.0 does not work (even if it
> compiles) on armel. That's why we are looking at getting FF3.0
> compiled. The nokia internet tablets are based on armel and and
> have browser based on FF3.0 alpha, so it would seem more feasible
> to get FF3.0 working than backporting the support to 2.0..
It would still be nice to get the bug reports, especially considering
iceape and icedove, which i assume both build fine too, will more than
probably ship in 2.0 based versions in lenny.
> > Could you try to use the same toolchain as when xulrunner was built ?
> > i.e. gcc-4.2_4.2.3-2 g++-4.2_4.2.3-2 binutils_2.18.1~cvs20080103-1
>
> A quick test confirms, test.c compiles fine with g++-4.2, but fails with
> g++-4.3.
Seems like a candidate for a gcc regression :-/
Mike
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Riku Voipio <riku.voipio@iki.fi>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #54 received at 474281@bugs.debian.org (full text, mbox, reply):
This bug also affect xulrunner build on unstable with gcc-4.3 now
as default:
http://buildd.debian.org/fetch.cgi?pkg=xulrunner;ver=1.8.1.13-1;arch=armel;stamp=1207348728
-snip-
configure:10281: checking for iconv in -lc
configure:10303: c++ -o conftest -fshort-wchar -pthread -Wl,--as-needed conftest.C -lc -ldl -lm 1>&5
/usr/bin/ld: ERROR: /tmp/ccAhgliI.o: Conflicting definitions of wchar_t
/usr/bin/ld: failed to merge target specific data of file /tmp/ccAhgliI.o
-snip-
On Sat, Apr 05, 2008 at 10:25:45AM +0200, Mike Hommey wrote:
> On Sat, Apr 05, 2008 at 12:13:45AM +0300, Riku Voipio wrote:
> > $ cat test.c
> > #include <stddef.h>
> > #include <wchar.h>
> >
> > int main() {
> > ; return 0; }
> > all6500-2:~/icew
> > $ c++ -c -fno-strict-aliasing -fshort-wchar test.c
> > $ echo $?
> > 0
> > $ c++ -fno-strict-aliasing -fshort-wchar test.c
> > /usr/bin/ld: ERROR: /tmp/ccKVwN1s.o: Conflicting definitions of wchar_t
> > /usr/bin/ld: failed to merge target specific data of file
> > /tmp/ccKVwN1s.o
> > collect2: ld returned 1 exit status
> >
> > A quick test confirms, test.c compiles fine with g++-4.2, but fails with
> > g++-4.3.
> Seems like a candidate for a gcc regression :-/
Not really, gcc has just become more strict.
on arm EABI, wchar_t is "unsigned int", while -fshort-wchar enforces
"short unsigned int". One is creating code that is incompatible with
platform ABI, which the linker refuses to mix.
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Mike Hommey <mh@glandium.org>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #59 received at 474281@bugs.debian.org (full text, mbox, reply):
On Wed, Apr 09, 2008 at 01:35:06AM +0300, Riku Voipio wrote:
> Not really, gcc has just become more strict.
>
> on arm EABI, wchar_t is "unsigned int", while -fshort-wchar enforces
> "short unsigned int". One is creating code that is incompatible with
> platform ABI, which the linker refuses to mix.
Is arm EABI the only ABI with such incompatibility ?
Mike
PS: I wonder if gcc shouldn't dump -fshort-wchar in such situation. The
option doesn't make sense if it will always lead to this error.
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Riku Voipio <riku.voipio@iki.fi>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #64 received at 474281@bugs.debian.org (full text, mbox, reply):
On Wed, Apr 09, 2008 at 08:29:17AM +0200, Mike Hommey wrote:
> On Wed, Apr 09, 2008 at 01:35:06AM +0300, Riku Voipio wrote:
> > on arm EABI, wchar_t is "unsigned int", while -fshort-wchar enforces
> > "short unsigned int". One is creating code that is incompatible with
> > platform ABI, which the linker refuses to mix.
> Is arm EABI the only ABI with such incompatibility ?
Good question. All other our archs seem to define wchar_t as int,
while on arm it's unsigned int. Handling signed values
on arm is slower than unsigned and negative values for wchar_t make
little point.
The gcc manpage seems to indicate that -fshort-wchar creates
ABI incompatability, and is only usefull for wine programming
(since windowsen wchar_t is unsigned short). Why in practice it's
only causing problems on arm eabi with gcc >= 4.3 is weird.
> PS: I wonder if gcc shouldn't dump -fshort-wchar in such situation. The
> option doesn't make sense if it will always lead to this error.
Theoretically it is valid option on arm eabi too, if you are not
linking against the system libraries (building kernel, bootloader or
static binaries with your own libc-like functionality ).
--
"rm -rf" only sounds scary if you don't have backups
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Riku Voipio <riku.voipio@iki.fi>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #69 received at 474281@bugs.debian.org (full text, mbox, reply):
tags 474281 + patch
thanks
Well, if the error happens at linking stage, changing AC_TRY_COMPILE to
AC_TRY_LINK will catch it, and configure will not bother using
-short-wchar anymore.
This needs to be applied to all packages of mozilla origin and
auto(re)confed.
--
"rm -rf" only sounds scary if you don't have backups
Information forwarded to debian-bugs-dist@lists.debian.org, Eric Dorland <eric@debian.org>:
Bug#474281; Package iceweasel.
(full text, mbox, link).
Acknowledgement sent to Riku Voipio <riku.voipio@iki.fi>:
Extra info received and forwarded to list. Copy sent to Eric Dorland <eric@debian.org>.
(full text, mbox, link).
Message #74 received at 474281@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
On Tue, Apr 15, 2008 at 01:00:40PM +0300, Riku Voipio wrote:
> This needs to be applied to all packages of mozilla origin and
> auto(re)confed.
Actually add the patch..
--
"rm -rf" only sounds scary if you don't have backups
[mozilla.patch (text/plain, attachment)]
Tags added: patch
Request was from Riku Voipio <riku.voipio@iki.fi>
to control@bugs.debian.org.
(Tue, 15 Apr 2008 10:03:07 GMT) (full text, mbox, link).
Bug 474281 cloned as bug 476301.
Request was from Mike Hommey <glandium@debian.org>
to control@bugs.debian.org.
(Tue, 15 Apr 2008 18:09:06 GMT) (full text, mbox, link).
Bug 474281 cloned as bug 476302.
Request was from Mike Hommey <glandium@debian.org>
to control@bugs.debian.org.
(Tue, 15 Apr 2008 18:09:09 GMT) (full text, mbox, link).
Bug reassigned from package `iceweasel' to `icedove'.
Request was from Mike Hommey <glandium@debian.org>
to control@bugs.debian.org.
(Tue, 15 Apr 2008 18:09:29 GMT) (full text, mbox, link).
Reply sent
to "Michael Casadevall" <sonicmctails@gmail.com>:
You have taken responsibility.
(Mon, 20 Oct 2008 13:21:04 GMT) (full text, mbox, link).
Notification sent
to Jon Dowland <jon+bts@alcopop.org>:
Bug acknowledged by developer.
(Mon, 20 Oct 2008 13:21:05 GMT) (full text, mbox, link).
Message #87 received at 476302-done@bugs.debian.org (full text, mbox, reply):
This was fixed with the upload of 2.0.0.17.
Michael
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Tue, 18 Nov 2008 07:26:22 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Fri Jan 12 02:15:00 2018;
Machine Name:
beach
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.