[PyQt] PyQt application frozen if run in localhost; OK if SSH'd to another host

2011-06-23 Thread Arrieta

Consider the following PyQT application (helloworld.py):


import sys
from PyQt4 import QtGui

def main():
app = QtGui.QApplication(sys.argv)
win = QtGui.QPushButton(Hello, World!)
win.show()
return app.exec_()

if __name__ == __main__:
sys.exit(main())


If I run ($python helloworld.py) this application from a shell in my
computer, I see the main container for the button, but the button itself
never renders. After a few clicks on the [x] of the main container, I
receive a warning window stating:


Window with title helloworld.py is not responding. This window belongs to
application helloworld.py (PID=2000, hostname=localhost). Do you wish to
terminate this application? (All unsaved data in this application will be
lost.) [Yes] [No]

If I then use the same shell window to SSH to another machine in our network
and run the exact same program (we have an NFS file system; I see the same
files in every machine) it runs as expected. In fact, even if I SSH back to
my original computer I can run the application.


This happens with all the PyQt applications I have developed for my group,
and it happens on every computer in our network: the applications won't run
locally, but run perfectly fine if the user is connected to the terminal via
SSH (let me insist, even if SSH'd to your local, physical computer!)


Do you have any suggestion for debugging/tracking down this problem?


Many thanks.


Python 2.6.5
Qt 4.6.2
Red Hat Linux Enterprise Edition (4)


-- 
View this message in context: 
http://old.nabble.com/PyQt-application-frozen-if-run-in-localhost--OK-if-SSH%27d-to-another-host-tp3195p3195.html
Sent from the PyQt mailing list archive at Nabble.com.
___
PyQt mailing listPyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt

Re: [PyQt] PyQt application frozen if run in localhost; OK if SSH'd to another host

2011-06-23 Thread Hans-Peter Jansen
On Thursday 23 June 2011, 18:26:52 Arrieta wrote:
 Consider the following PyQT application (helloworld.py):


 import sys
 from PyQt4 import QtGui

 def main():
 app = QtGui.QApplication(sys.argv)
 win = QtGui.QPushButton(Hello, World!)
 win.show()
 return app.exec_()

 if __name__ == __main__:
 sys.exit(main())


 If I run ($python helloworld.py) this application from a shell in my

^
It looks, like $python is some unusual shell variable, that we cannot 
interprete.

 computer, I see the main container for the button, but the button
 itself never renders.

What happens, if you run python interactively, and paste the above into 
the python shell?

 After a few clicks on the [x] of the main 
 container, I receive a warning window stating:


 Window with title helloworld.py is not responding. This window
 belongs to application helloworld.py (PID=2000, hostname=localhost).
 Do you wish to terminate this application? (All unsaved data in this
 application will be lost.) [Yes] [No]

This is the window manager chiming in. For some reason, the 
communication to the X server seems to be stalled. xauth issues?

 If I then use the same shell window to SSH to another machine in our
 network and run the exact same program (we have an NFS file system; I
 see the same files in every machine) it runs as expected. In fact,
 even if I SSH back to my original computer I can run the application.

Well, ssh -X creates a private communication channel to the X server.

 This happens with all the PyQt applications I have developed for my
 group, and it happens on every computer in our network: the
 applications won't run locally, but run perfectly fine if the user is
 connected to the terminal via SSH (let me insist, even if SSH'd to
 your local, physical computer!)

I cannot see a single reason, how PyQt could be the culprit here.

The whole issue sounds like a major misconfiguration of X, selinux, or 
some other security feature running wild..


 Do you have any suggestion for debugging/tracking down this problem?

You might want to recode the script in C++. Due to the nature of PyQt, I 
expect this to fail in a similar way, or your PyQt build is busted in 
non trivial ways.


 Many thanks.


 Python 2.6.5
 Qt 4.6.2
 Red Hat Linux Enterprise Edition (4)

Since you asked here, you might want to tell us the versions of sip and 
PyQt you use. Even, if it happens that you discover the reason being 
something unrelated to sip/PyQt, report this back here, please.

Pete
___
PyQt mailing listPyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt


Re: [PyQt] PyQt application frozen if run in localhost; OK if SSH'd to another host

2011-06-23 Thread Arrieta

The $ in $python helloworld.py is meant to simbolize the command prompt, not
an environment variable. Sorry for the confusion. I will verify the X
configuration in the machines and get back to you.


Thanks!


-- 
View this message in context: 
http://old.nabble.com/PyQt-application-frozen-if-run-in-localhost--OK-if-SSH%27d-to-another-host-tp3195p31915798.html
Sent from the PyQt mailing list archive at Nabble.com.
___
PyQt mailing listPyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt