[PyQt] Help tracking down intermittent segfault using QGraphicsItem

Lee Harr missive at hotmail.com
Sat Jan 5 21:47:50 GMT 2013


First up, thanks again to those who are helping.
I think I am getting a better handle on the problem.


I am using:
Ubuntu 12.10
Python 3.2.3
Qt 4.8.2
PyQt 4.9.3

I also have the ubuntu -dbg packages:
python3-dbg
python3-pyqt4-dbg



Do I need to run my program with python3-dbg?

I tried generating the core with the regular python3 and
the backtrace has thousands of lines with only a very few
mentioning anything about "No symbol table info available."


Like I said, the bt is thousands of lines. I have a feeling
that posting that here is not going to win me any friends.
Is the problem likely to be in the first few or last few lines,
or should I try to find someplace to paste the whole thing?



If I do need to run with the -dbg executable,
I don't understand why python3-dbg cannot import the PyQt4 modules...

$ python3
Python 3.2.3 (default, Oct 19 2012, 19:53:57)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.executable
'/usr/bin/python3'
>>> import PyQt4
>>> import PyQt4.QtCore
>>>


$ python3-dbg
Python 3.2.3 (default, Oct 19 2012, 19:58:54)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
[60298 refs]
>>> sys.executable
'/usr/bin/python3-dbg'
[60300 refs]
>>> import PyQt4
[60323 refs]
>>> PyQt4.__file__
'/usr/lib/python3/dist-packages/PyQt4/__init__.py'
[60323 refs]
>>> import PyQt4.QtCore
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named QtCore
[150996 refs]
>>>



Also... The python3-pyqt4-dbg package seems to install to a different
location, so I tried inserting that dir on to sys.path with unexpected results.

$ python3-dbg
Python 3.2.3 (default, Oct 19 2012, 19:58:54)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
[60298 refs]
>>> sys.path.insert(1, '/usr/lib/debug/usr/lib/python3/dist-packages/')
[60299 refs]
>>> import PyQt4
[60335 refs]
>>> PyQt4.__file__
'/usr/lib/python3/dist-packages/PyQt4/__init__.py'
[60337 refs]
>>>


I noticed that there was no __init__.py in
/usr/lib/debug/usr/lib/python3/dist-packages/PyQt4
so I added that and then...

$ python3-dbg
Python 3.2.3 (default, Oct 19 2012, 19:58:54)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
[60298 refs]
>>> sys.path.insert(1, '/usr/lib/debug/usr/lib/python3/dist-packages')
[60299 refs]
>>> import PyQt4
[60324 refs]
>>> PyQt4.__file__
'/usr/lib/debug/usr/lib/python3/dist-packages/PyQt4/__init__.py'
[60328 refs]
>>> import PyQt4.QtCore
Segmentation fault (core dumped)


Clearly, I am doing something wrong.

Any hints?

 		 	   		  


More information about the PyQt mailing list