2009-04-01 08:29:17     Qt 4.5 hang

Document created by Aaronwu Employee on Aug 14, 2013
Version 1Show Document
  • View in full screen mode

2009-04-01 08:29:17     Qt 4.5 hang

Nikolay Chokoev (IRELAND)

Message: 71949   

Hi,

 

This is related to:

https://blackfin.uclinux.org/gf/project/uclinux-dist/forum/?action=ForumBrowse&forum_id=39&_forum_action=ForumMessageBrowse&thread_id=33177

 

...I tried to find out more. In the code:

 

#include <QtGui>

 

int main(int argc, char *argv[])

{

    QApplication a(argc, argv);

    QWidget w;

    QVBoxLayout bl(&w);

    QComboBox pcb;

//    pcb.addItem("1");

//    pcb.addItem("2");

//    pcb.addItem("3");

    bl.addWidget(&pcb);

    bl.addStretch();

    w.setLayout(&bl);

    w.show();

    return a.exec();

}

 

when I comment "pcb.addItem("x")" the application doesn't hang and it seems that the combobox accepts the events (seems to be redrawed). With these lines uncommented it hangs when the combo box is touched.

 

I noticed it hangs with QRadioButton alse (instead of QComboBox), but with QPushButton - doesn't (it works).

 

I tried to debug it and when it hangs, the BF executes:

0x0295bf6e:     W[P0 + 0x12] = R0;

0x0295bf70:     NOP;

0x0295bf72:     JUMP.S 0x0x295bf6e;

It seems to be a trap, but I don't know where (in the source) is located. The GDB doesn't give me any info about the source location. The source is compiled with "-O0 -g" options.

I'm using: GNU Toolchain\2008R1.5\linux-uclibc\bin>bfin-linux-uclibc-gdb (Windows host).

At the beginning of the debug sesion I have:

 

Remote debugging using 192.168.10.2:1234

Error while mapping shared library sections:

/usr/lib/libQtGui.so.4: No such file or directory.

Error while mapping shared library sections:

/usr/lib/libQtNetwork.so.4: No such file or directory.

Error while mapping shared library sections:

/usr/lib/libQtCore.so.4: No such file or directory.

Error while mapping shared library sections:

/lib/libpthread.so.0: No such file or directory.

Error while mapping shared library sections:

/lib/libstdc++.so.6: No such file or directory.

Error while mapping shared library sections:

/lib/libm.so.0: No such file or directory.

Error while mapping shared library sections:

/lib/libgcc_s.so.1: No such file or directory.

Error while mapping shared library sections:

/lib/libc.so.0: No such file or directory.

Error while mapping shared library sections:

/usr/lib/libts-0.0.so.0: No such file or directory.

Error while mapping shared library sections:

/usr/lib/libpng12.so.0: No such file or directory.

Error while mapping shared library sections:

/lib/libz.so.1: No such file or directory.

Error while mapping shared library sections:

/lib/librt.so.0: No such file or directory.

Error while mapping shared library sections:

/lib/libdl.so.0: No such file or directory.

Error while mapping shared library sections:

/lib/ld-uClibc.so.0: No such file or directory.

Error while mapping shared library sections:

/usr/lib/ts//input.so: No such file or directory.

Error while mapping shared library sections:

/usr/lib/ts//pthres.so: No such file or directory.

Error while mapping shared library sections:

/usr/lib/variance.so: No such file or directory.

Error while mapping shared library sections:

/usr/lib/ts//dejitter.so: No such file or directory.

Error while mapping shared library sections:

/usr/lib/ts//linear.so: No such file or directory.

Symbol file not found for /usr/lib/libQtGui.so.4

Symbol file not found for /usr/lib/libQtNetwork.so.4

Symbol file not found for /usr/lib/libQtCore.so.4

Symbol file not found for /lib/libpthread.so.0

Symbol file not found for /lib/libstdc++.so.6

Symbol file not found for /lib/libm.so.0

Symbol file not found for /lib/libgcc_s.so.1

Symbol file not found for /lib/libc.so.0

Symbol file not found for /usr/lib/libts-0.0.so.0

Symbol file not found for /usr/lib/libpng12.so.0

Symbol file not found for /lib/libz.so.1

Symbol file not found for /lib/librt.so.0

Symbol file not found for /lib/libdl.so.0

Symbol file not found for /lib/ld-uClibc.so.0

Symbol file not found for /usr/lib/ts//input.so

Symbol file not found for /usr/lib/ts//pthres.so

Symbol file not found for /usr/lib/variance.so

Symbol file not found for /usr/lib/ts//dejitter.so

Symbol file not found for /usr/lib/ts//linear.so

 

Any suggestions?

 

Best regards,

 

Nikolay

 

 

QuoteReplyEditDelete

 

 

2009-04-01 13:27:11     Re: Qt 4.5 hang

Robin Getz (UNITED STATES)

Message: 71973   

 

If you are running it in gdb - what is the back trace show?

 

You should be able to do a "add-symbol-file" in gdb, or set the search path (before loading things) with set solib-search-path path.

 

See:

 

http://sources.redhat.com/gdb/current/onlinedocs/gdb_17.html

 

-Robin

QuoteReplyEditDelete

 

 

2009-04-01 19:43:21     Re: Qt 4.5 hang

Alexander Buryak (UKRAINE)

Message: 71985   

 

I 'm trying to use Qt 4.5. But applications are not started. Can you write how buid qt library ?

 

 

QuoteReplyEditDelete

 

 

2009-04-02 05:22:39     Re: Qt 4.5 hang

Nikolay Chokoev (IRELAND)

Message: 72031   

 

Hi Robin,

 

Thanks for the suggestion.

 

I've added the .so search path with "solib-search-path" and the GDB found most of the libraries.

 

Only ts libraries left. I'll try to find them also.

 

Symbol file not found for /usr/lib/ts//input.so

Symbol file not found for /usr/lib/ts//pthres.so

Symbol file not found for /usr/lib/variance.so

Symbol file not found for /usr/lib/ts//dejitter.so

Symbol file not found for /usr/lib/ts//linear.so

 

I don't know how to find the load address and I cannot load them with "add-symbol-file"

 

The backtrace shows:

 

1.When the application is working (not hang):

 

(gdb) bt

#0  0x001ceaa0 in __libc_pselect6 () from y:/lib/libc.so.0

#1  0x001ceb02 in select () from y:/lib/libc.so.0

#2  0x00532f48 in ?? ()

#3  0x001ceb02 in select () from y:/lib/libc.so.0

#4  0x00533b9e in ?? ()

#5  0x001ceb02 in select () from y:/lib/libc.so.0

#6  0x00533f04 in ?? ()

#7  0x001ceb02 in select () from y:/lib/libc.so.0

#8  0x009f5220 in ?? ()

#9  0x001ceb02 in select () from y:/lib/libc.so.0

#10 0x0050f982 in ?? ()

#11 0x001ceb02 in select () from y:/lib/libc.so.0

#12 0x0050faa6 in ?? ()

#13 0x001ceb02 in select () from y:/lib/libc.so.0

#14 0x00511088 in ?? ()

#15 0x001ceb02 in select () from y:/lib/libc.so.0

#16 0x01e211ea in main (argc=1, argv=0x1c9fe84) at main.cpp:16

 

 

 

2.When I touch the combo box and it freezes:

 

(gdb) bt

#0  0x0095bf72 in ?? ()

#1  0x00d9c43e in ?? ()

Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Best regards,

Nikolay

QuoteReplyEditDelete

 

 

2009-04-02 05:28:03     Re: Qt 4.5 hang

Nikolay Chokoev (IRELAND)

Message: 72032   

 

Hi Aleksander,

As I understand you have alredy compiled Qt application it doesn't work. So you have to have Qt libraries alredy built.

Why do you need to build them again?

 

You can build the libraries with:

 

make lib/qt-embedded/_only

 

 

QuoteReplyEditDelete

 

 

2009-04-07 13:03:11     Re: Qt 4.5 hang

Nikolay Chokoev (IRELAND)

Message: 72337   

 

I found if I build the libraries with virtual frame buffer enabled - all works fine. If I build normal - the problem exists. I've tested it twice. Any ideas?

Attachments

    Outcomes