[PyQt] qtdirs.app can't load QtCore

Phil Thompson phil at riverbankcomputing.com
Thu Jun 25 23:04:56 BST 2009


On Thu, 25 Jun 2009 16:47:56 -0500, Dave Peterson <dpeterson at enthought.com>
wrote:
> Dave Peterson wrote:
>>> You could try running qmake manually on the qtdirs.pro file that
>>> configure.py will have left lying around, and then run make, and then 
>>> the
>>> qtdirs it produces.  If it fails to run then it's a problem with your
Qt
>>> build.
>>>   
>>
>> Yup, I actually already tried that so I could play around with various 
>> options.  I've looked through the generated qtdirs.mk to look for 
>> anything wrong there, but not found anything. :-(   I've also tried 
>> manually running the various g++ compilation commands to build qtdirs 
>> so I could play with the option flags there too.  Nothing I've tried 
>> seems to have any effect on this issue. :-(
> 
> So perhaps the issue is simply that I didn't know what to look for in 
> the qtdirs.mk?  As a better check, I just tried diff'ing a qtdirs.mk 
> from my custom-built Qt install versus one from the official binary 
> install.  For the most part the only differences are in the paths to the 
> various Qt installed bits.  However, I've noted the following which 
> looks super relevant. I just don't know how this stuff gets generated so 
> I'm not sure how to go about debugging / fixing it.   Any advice?
>
> In the qtdirs.mk done against my custom-built Qt install, the INCPATH 
> definition on line 16 includes a 
>
"-I/Users/dpeterson/py/qtbuild/install/Qt-4.5.1-1.egg/EGG-INFO/usr/include/QtCore"
> 
> whereas the one generated from the official Qt 4.5.1 install has 
> "-I/Library/Frameworks/QtCore.framework/Versions/4/Headers" in the same 
> position.
> 
> BTW: The qtdirs.pro files are exactly the same across the two different 
> attempts.
> 
> BTW: a "qmake -query" from each environment shows what looks like the 
> right paths, but again I may be confused about what they should be.   
>  From the official Qt binary install, the QT_INSTALL_LIBS output is 
> "/Library/Frameworks" which I note only contains the Qt frameworks.  But 
> in my custom-built Qt environment, QT_INSTALL_LIBS points at 
> ".../EGG_INFO/usr/lib" which contains both the Qt framework bundles, 
> plus a number of *.la files (one per framework bundle) and a few 
> libQtCLucene*.dylib and associated libQtCLucene.(la | prl) files.  Is it 
> possible that these .la files or the mixing of frameworks and dylibs is 
> causing the difference in behavior?   I'll try deleting them now.

They shouldn't make a difference - they are present in my standard
self-built version. The directory layout you get when using the binary
installer is different than what you get if you do your own standard build.
I never use the installers because, historically at least, they've had
problems. So if you want to compare your non-standard build with something
that will work I'd do a standard built of your own.

To build Qt...

./configure -prefix $HOME/qt-4.5.2
make
make install

To build PyQt...

python configure.py -q $HOME/qt-4.5.2/bin/qmake

That should give you a working PyQt and you can compare properly.

Phil


More information about the PyQt mailing list