这是Qt库或我自己的应用程序的错误吗?

时间:2010-12-05 10:36:38

标签: javascript c++ qt webkit

我使用Qt库编写了一个应用程序(4.7和4.7.1都有这个问题),这个应用程序主要处理webkit(显示网页)和Qt-webkit桥接(将C ++类映射到Javascript对象)。但得到了以下段错误:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff5585db7 in QHttpNetworkConnectionChannel::allDone (this=0x86bb20)
    at /var/tmp/qt-src/src/network/access/qhttpnetworkconnectionchannel.cpp:620
warning: Source file is more recent than executable.
620     if (reply->d_func()->expectContent() && reply->d_func()->autoDecompress && !reply->d_func()->streamEnd)
(gdb) bt
#0  0x00007ffff5585db7 in QHttpNetworkConnectionChannel::allDone (
    this=0x86bb20)
    at /var/tmp/qt-src/src/network/access/qhttpnetworkconnectionchannel.cpp:620
#1  0x00007ffff5586992 in QHttpNetworkConnectionChannel::_q_receiveReply (
    this=0x86bb20)
    at /var/tmp/qt-src/src/network/access/qhttpnetworkconnectionchannel.cpp:397
#2  0x00007ffff558829a in QHttpNetworkConnectionChannel::qt_metacall (
    this=0x86bb20, _c=QMetaObject::InvokeMetaMethod, 
    _id=<value optimized out>, _a=0x7fffffffd8c0)
    at .moc/release-shared/moc_qhttpnetworkconnectionchannel_p.cpp:92
#3  0x00007ffff51ec0f8 in QMetaObject::activate (sender=0x8655f0, 
    m=<value optimized out>, local_signal_index=<value optimized out>, 
    argv=0x8a9e20) at /var/tmp/qt-src/src/corelib/kernel/qobject.cpp:3272
#4  0x00007ffff55ed678 in QAbstractSocketPrivate::canReadNotification (
    this=0x865610)
    at /var/tmp/qt-src/src/network/socket/qabstractsocket.cpp:639
#5  0x00007ffff55dc791 in QReadNotifier::event (this=<value optimized out>, 
    e=0x1) at /var/tmp/qt-src/src/network/socket/qnativesocketengine.cpp:1103
#6  0x00007ffff5a67d5f in QApplicationPrivate::notify_helper (this=0x61b840, 
    receiver=0x965270, e=0x7fffffffdee0)
    at /var/tmp/qt-src/src/gui/kernel/qapplication.cpp:4396
#7  0x00007ffff5a6e94b in QApplication::notify (this=0x7fffffffe1f0, 
    receiver=0x965270, e=0x7fffffffdee0)
---Type <return> to continue, or q <return> to quit---
    at /var/tmp/qt-src/src/gui/kernel/qapplication.cpp:4277
#8  0x00007ffff51d60a4 in QCoreApplication::notifyInternal (
    this=0x7fffffffe1f0, receiver=0x965270, event=0x7fffffffdee0)
    at /var/tmp/qt-src/src/corelib/kernel/qcoreapplication.cpp:732
#9  0x00007ffff5203a3a in QCoreApplication::sendEvent (source=0x624b20)
    at /var/tmp/qt-src/src/corelib/kernel/qcoreapplication.h:215
#10 socketNotifierSourceDispatch (source=0x624b20)
    at /var/tmp/qt-src/src/corelib/kernel/qeventdispatcher_glib.cpp:110
#11 0x00007ffff26f08c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#12 0x00007ffff26f4748 in ?? () from /lib/libglib-2.0.so.0
#13 0x00007ffff26f48fc in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#14 0x00007ffff5203bcc in QEventDispatcherGlib::processEvents (this=0x6210d0, 
    flags=<value optimized out>)
    at /var/tmp/qt-src/src/corelib/kernel/qeventdispatcher_glib.cpp:415
#15 0x00007ffff5b18bcf in QGuiEventDispatcherGlib::processEvents (
    this=0x86bb20, flags=<value optimized out>)
    at /var/tmp/qt-src/src/gui/kernel/qguieventdispatcher_glib.cpp:204
#16 0x00007ffff51d53f5 in QEventLoop::processEvents (
    this=<value optimized out>, flags=...)
    at /var/tmp/qt-src/src/corelib/kernel/qeventloop.cpp:149
#17 0x00007ffff51d5646 in QEventLoop::exec (this=0x7fffffffe150, flags=...)
    at /var/tmp/qt-src/src/corelib/kernel/qeventloop.cpp:201
---Type <return> to continue, or q <return> to quit---
#18 0x00007ffff51d7484 in QCoreApplication::exec ()
    at /var/tmp/qt-src/src/corelib/kernel/qcoreapplication.cpp:1009
#19 0x00000000004064b4 in main (argc=1, argv=0x7fffffffe2f8)
    at ../myPlatform/main.cpp:10

1 个答案:

答案 0 :(得分:0)

警告:“源文件比可执行文件更新。”很奇怪你编译了Qt资源吗?或者您使用最新版本的源和标头以及旧版本的库吗?