[英]Qt Designer & Qt Assistant seg fault on startup
如果这是错误的部分,我深表歉意-视需要移动...
有一点背景知识:我有一个构建的Qt 4.8.4应用程序,对我来说运行得很好。 我使用VNC连接到Linux Redhat盒。
但是,当将应用程序交给同事使用时,他无法使其运行而不会遇到分段错误:基本上,他将尝试检查其中一个复选框,并且该应用程序将分段错误并使用gdb(回溯)显示:
#0 0x00000000 in ?? ()
#1 0xb7a2b9e8 in QGtkStyle::drawComplexControl () from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
#2 0xb7b315b5 in QScrollBar::paintEvent () from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
#3 0xb7682fd4 in QWidget::event () from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
...
需要注意的几件事:
PATH
, QTDIR
, QTLIB
, QTBIN
, QTINC
和QTMAKESPEC
。 我们俩都使用bash shell。 我一直在想办法解决这个问题。
好吧,我决定随机做些事情,然后我运行了已安装的Qt Designer……无法启动。 有趣...
因此,我进行了一些调查,发现菜单中的Qt Designer适用于Qt-3.3,该产品也已安装。 我读过的那个大概不是问题。
然后,我尝试启动与Qt 4.8.4打包在一起的Qt Designer,这使它感到惊讶,但它也无法启动。 如果尝试从终端启动它,则会收到“分段故障”输出。 (进一步的调查显示,Qt Assistant正在执行相同的操作...)
通过gdb运行Designer(对于qt 4.8.4),回溯显示:
#0 0x00000000 in ?? ()
#1 0xb6f049e8 in QGtkStyle::drawComplexControl() from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
#2 0xb700a5b5 in QScrollBar::paintEvent() from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
#3 0xb6b5bfd4 in QWidget::event () from /usr/local/Trolltech/Qt-4.8.4/lib/libQtGui.so.4
设计师的背景与我的应用程序的背景相同!
...而且我不知道这对我的应用程序/其他用户意味着什么。
我本来是想重新安装Qt,但是如果对我来说工作正常,那将如何解决?
因此,对于遇到类似问题的任何人,我相信至少在这种情况下,我已经找到了答案:
在比较我的主目录和另一个用户的主目录之后,我发现了两个引起我极大兴趣的文件夹:
.config/
.qt/
事实证明,另一个用户缺少 .qt文件夹! 在我的.config文件中,我有一个他没有的“ Trolltech”文件夹。 因此,我将自己的作品复制到他的作品中,并注意到最后一件事,然后尝试再次运行...
在.config /下,有一个名为Trolltech.conf
的文件-猜猜是什么:他和我的完全不同:我的Trolltech.conf文件没有设置Qt 4.8.4的所有内容。 所以我也照做了。
值得一看的是-Qt Designer(适用于3.3和4.8.4),Qt Assistant和我的应用程序现在都可以正常工作。 :D
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.