Trolltech Home | Qt-interest Home | Recent Threads | All Threads | Author | Date
All threads index page 7

Qt-interest Archive, March 2007
Assert problem with compiled Qt4.3beta


Message 1 in thread

Hi,

since last monday i've compiled Qt4.3 eight times, all of them with the same
result. I've compiled from the official trolltech release and from KDE
subversion.

I do 'configure' in the next
wat: ./configure --prefix=$QTDIR -qt-gif -no-exceptions -debug -qdbus -pch -nomake
demos -nomake examples .

Qt4.3 compiles properly, but anytime i want to execute an Qt, my own or
designer, assistant, etc...i have this result:

jon@ibook:~$ assistant
ASSERT: "d->ref == 1" in file tools/qlistdata.cpp, line 132

It's a problem i've never had with Qt4.2, and i think it's very strange. I
paste you the backtrace, using gdb:

Starting program: /mnt/home/jon/kde4/bin/assistant
[Thread debugging using libthread_db enabled]
[New Thread 805440192 (LWP 4442)]
ASSERT: "d->ref == 1" in file tools/qlistdata.cpp, line 132

Program received signal SIGABRT, Aborted.
[Switching to Thread 805440192 (LWP 4442)]
0x0e9acf6c in raise () from /lib/tls/libc.so.6
(gdb) bt
#0  0x0e9acf6c in raise () from /lib/tls/libc.so.6
#1  0x0e9aea0c in abort () from /lib/tls/libc.so.6
#2  0x0eeb9fe8 in qt_message_output (msgType=QtFatalMsg,
buf=0x7fa58514 "ASSERT: \"d->ref == 1\" in file tools/qlistdata.cpp, line
132") at global/qglobal.cpp:2135
#3  0x0eeba0bc in qFatal (msg=0xf021400 "ASSERT: \"%s\" in file %s,
line %d") at global/qglobal.cpp:2366
#4  0x0eeba2e0 in qt_assert (assertion=0xf023ef0 "d->ref == 1",
file=0xf023efc "tools/qlistdata.cpp", line=132) at global/qglobal.cpp:1895
#5  0x0eeeee20 in QListData::prepend (this=0x1007c090) at
tools/qlistdata.cpp:132
#6  0x0ef32d98 in QList<QAbstractFileEngineHandler*>::prepend
(this=0x1007c090, t=@0x7fa5a608)
at ../../include/QtCore/../../src/corelib/tools/qlist.h:417
#7  0x0ef321d4 in QAbstractFileEngineHandler (this=0x1007c008) at
io/qabstractfileengine.cpp:130
#8  0x0ef6d6b4 in QResourceFileEngineHandler (this=0x1007c008) at
io/qresource.cpp:1073
#9  0x0ef6783c in resource_file_handler () at io/qresource.cpp:1360
#10 0x0ef678d4 in qt_force_resource_init () at io/qresource.cpp:1362
#11 0x0ef6794c in __static_initialization_and_destruction_0
(__initialize_p=1, __priority=65535) at io/qresource.cpp:1364
#12 0x0ef679a8 in global constructors keyed to _ZN16QResourcePrivate5clearEv
() at io/qresource.cpp:1366
#13 0x0f021298 in __do_global_ctors_aux ()
from /home/jon/kde4/lib/libQtCore.so.4
#14 0x0eeb9170 in _init () from /home/jon/kde4/lib/libQtCore.so.4
#15 0x3000c040 in ?? () from /lib/ld.so.1
#16 0x3000c1d0 in ?? () from /lib/ld.so.1
#17 0x30011328 in ?? () from /lib/ld.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

In #5, i can see that d->ref is not 1 (d->ref == 1), this is the value of
d->ref at that point:

#5  0x0eeeee20 in QListData::prepend (this=0x1007c090) at
tools/qlistdata.cpp:132
132         Q_ASSERT(d->ref == 1);
(gdb) print d->ref
$1 = {value = 268943504}


I use Debian SID on a powerpc32. Do you know anything about this? Could be a
bug or it's a problem in my system?

Thanks!!

--
 [ signature omitted ] 

Message 2 in thread

Jon de Andrés wrote:
> since last monday i've compiled Qt4.3 eight times, all of them with the
> same result. I've compiled from the official trolltech release and from
> KDE subversion.
> 
> I do 'configure' in the next
> wat: ./configure --prefix=$QTDIR -qt-gif -no-exceptions -debug -qdbus -pch
> -nomake demos -nomake examples .
> 
> Qt4.3 compiles properly, but anytime i want to execute an Qt, my own or
> designer, assistant, etc...i have this result:
> 
> jon@ibook:~$ assistant
> ASSERT: "d->ref == 1" in file tools/qlistdata.cpp, line 132
> 
> It's a problem i've never had with Qt4.2, and i think it's very strange. 
> [...]
> I use Debian SID on a powerpc32. Do you know anything about this? Could be
> a bug or it's a problem in my system?

I am also running Debian on a PowerPC system and I have the same problem. :(
I also tried to compile Qt several times with several compiltation
parameters but everytime I start "qdbusxml2cpp" or "assistant" in the bin
directory, I've got the following message:
   ASSERT: "d->ref == 1" in file tools/qlistdata.cpp, line 132
   Aborted

... and that's all. I cannot compile KDE 4 anymore since it moved to
Qt4.3beta...


-- 
 [ signature omitted ]