Fwd: [PyQt] QtGui.QApplication() never returns

Joe Turpin joe.turpin at gmail.com
Tue Dec 29 03:58:30 GMT 2009


On Sun, Dec 27, 2009 at 1:26 PM, Hans-Peter Jansen <hpj at urpla.net> wrote:
> On Wednesday 23 December 2009, 15:52:59 Joe Turpin wrote:
>> On Mon, Dec 14, 2009 at 10:14 AM, Joe Turpin <joe.turpin at gmail.com> wrote:
>> > On Mon, Dec 14, 2009 at 9:15 AM, David Boddie <dboddie at trolltech.com>
> wrote:
>> >> On Sat Dec 12 21:47:16 GMT 2009, Joe Turpin wrote:
>> >>> I have a very basic python script file that looks like the following
>> >>> (taken directly from an online tutorial):
>> >>>
>> >>>     #!/usr/bin/python
>> >>>
>> >>>     # simple.py
>> >>>
>> >>>     import sys
>> >>>     from PyQt4 import QtGui
>> >>>
>> >>>     app = QtGui.QApplication(sys.argv)
>> >>>
>> >>>     widget = QtGui.QWidget()
>> >>>     widget.resize(250, 150)
>> >>>     widget.setWindowTitle('simple')
>> >>>     widget.show()
>> >>>
>> >>>     sys.exit(app.exec_())
>> >>>
>> >>> The script runs to completion when I execute it under my regular user
>> >>> account, but hangs when I execute it as root.. Using pdb I inserted a
>> >>> set_trace() and found that it never returns from the call to
>> >>> QtGui.QApplication(). Any ideas why this might be happening?
>>
>> <snip>
>>
>> I've been busy with other things, as I'm sure you all are, and haven't
>> had time to investigate the deadlock occurring for me when I run my
>> simple PyQt4 app as root.
>>
>> David, did my last email to the list with gdb and strace output give
>> any clues to where the problem lies? It looks like a deadlock, but is
>> this a result of system configuration or a software bug? I'm assuming
>> you are able to run this as root, right?
>
> I am: openSUSE 11.1 (Linux 2.6.27.39/i586) with sip 4.9.3, PyQt 4.6.2, Qt
> 4.5.3 and Python 2.6.0.
>
> Might SELinux or the like gets in the way?
>
> What I find suspicious is the pthread_cond_wait call! A strace as root
> doesn't show anything related (apart from
> open("/lib/libpthread.so.0", O_RDONLY)  = 3
> ) here, but neither appears libQtDBus nor libdbus-1 in my traces.
>
> Pete

Thanks for verifying that for me Pete. Seeing how your lib versions
are the same (or very close given the different distributions), I'm
leaning towards the problem being the configuration of my system.

Yeah, I was wondering if SELinux might be involved. That was my
initial suspicion and I tried running the app with SELinux in
permissive mode, but the effect was the same. I'm no sysadmin, though,
so maybe I'll investigate SELinux a bit further. I'll pester their mail list
if I have any questions related to it.

Thanks again,
Joe



More information about the PyQt mailing list