[PyQt] eric4 segfault after upgrading to SIP-4.7.6/PyQT4-4.4.2

Darren Dale darren.dale at cornell.edu
Wed May 21 15:58:39 BST 2008


This morning I updated SIP to version 4.7.6 and PyQt4 to version 4.4.2 on a 
64bit gentoo linux system. When I launch eric4, I get a segfault that looks 
like it is originating from QScintilla:

--------------------------------------------------------------------------------
2008-05-21, 10:31:43
--------------------------------------------------------------------------------
<type 'exceptions.TypeError'>:
argument 1 of QsciLexerPython() has an invalid type
--------------------------------------------------------------------------------
  File "/usr/lib64/python2.5/site-packages/eric4/eric4.py", line 243, in 
<module>
    main()
  File "/usr/lib64/python2.5/site-packages/eric4/eric4.py", line 228, in main
    mainWindow = UserInterface(loc, splash, pluginFile)
  File "/usr/lib64/python2.5/site-packages/eric4/UI/UserInterface.py", line 
227, in __init__
    self.__createLayout(debugServer)
  File "/usr/lib64/python2.5/site-packages/eric4/UI/UserInterface.py", line 
697, in __createLayout
    self.shell = Shell(debugServer, self.viewmanager, self.shellDock)
  File "/usr/lib64/python2.5/site-packages/eric4/QScintilla/Shell.py", line 
156, in __init__
    self.__bindLexer()
  File "/usr/lib64/python2.5/site-packages/eric4/QScintilla/Shell.py", line 
218, in __bindLexer
    self.lexer = Lexers.getLexer(self.language, self)
  
File "/usr/lib64/python2.5/site-packages/eric4/QScintilla/Lexers/__init__.py", 
line 71, in getLexer
    return LexerPython(parent)
  
File "/usr/lib64/python2.5/site-packages/eric4/QScintilla/Lexers/LexerPython.py", 
line 29, in __init__
    QsciLexerPython.__init__(self, parent)

--------------------------------------------------------------------------------
Version Numbers:
  Python 2.5.2
  Qt 4.4.0
  PyQt4 4.4.2
  sip 4.7.6
  QScintilla 2.2
  eric4 4.2-snapshot-20080519 (r2161)

Platform: linux2
2.5.2 (r252:60911, May 21 2008, 08:44:06)
[GCC 4.2.3 (Gentoo 4.2.3 p1.0)]


I checked the types of self that is passed to QsciLexerPython.__init__(self, 
parent). self is <class 'QScintilla.Lexers.LexerPython.LexerPython'>, looks 
like that is what eric4 expects. I tried reinstalling qscintilla and eric4, 
there was no change. Can anyone confirm this? I installed PyQt4-4.4.2 and 
eric-4.1.4 or the eirc-4.2 snapshot on windows, on that system eric4 runs 
without a segfault.

Thanks,
Darren


More information about the PyQt mailing list