[Fedora-trans-ar] Re: Arabic issue #18: app.setFont(QFont("")) causes a run-time crash!

Lars Knoll lars at trolltech.com
Fri Feb 25 06:49:46 UTC 2005


On Thursday 24 February 2005 22:12, Munzir Taha wrote:
> On Yaum al-Khamees 15 Muharram 1426 1:30 pm, Lars Knoll wrote:
> > Hi Munzir,
> >
> > The best way would be to configure Qt with -debug, then compile and run
> > gdb application core yourself to get a valid stack trace.
>
> I would rather prefer skip reconfiguring if possible. Let me try:
>
> ./configure -help
>  *  -release ........... Compile and link Qt with debugging turned off.
>     -debug ............. Compile and link Qt with debugging turned on.
>
> Which says -release is the default. However I wonder why are those -g,
> lQtCore_debug and -lQtGui_debug emitted in a default make?!

Because the default configure will build both. It should mark both release and 
debug with a star in the output.

> # make
> g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_CORE_LIB -DQT_GUI_LIB
> -DQT_SHARED ... -L/usr/local/qt-build/lib -lQtCore_debug -lQtGui_debug
> -lpthread

Ok, so you linked against the debug version.

> Now, let my try debug it myself:
> from gdb:
>
> #6  0xb7ebbed2 in qt_message_output (msgType=QtFatalMsg,
>     buf=0xbfffcda0 "ASSERT: \"(next == length && gp == current.num_glyphs)
> || logClusters[next] == gp\" in file
> /usr/local/qt/src/gui/text/qtextlayout.cpp, line 1146") at
> /usr/local/qt/src/core/global/qglobal.cpp:567
> 567             abort(); // trap; generates core dump
> (gdb) print gp
> No symbol "gp" in current context.
> (gdb) print current.num_glyphs
> No symbol "current" in current context.
> (gdb)
>
> Can anyone tell me why print shows "No symbol"?

Because you're in the wrong stack frame. Just run the app until you get the 
segfault and use the 'bt' command in gdb. That usually gives us enough 
information.

Cheers,
Lars

>
> > I'll look into your reports in the next days.
>
> Surely, you will solve it before me ;)




More information about the Fedora-trans-ar mailing list