I did build Qt myself because I didn't know if Trolltech (Nokia...whatever)
included the x86_64 version of the libraries.

When compiling it manually, it installs things in three places.  It installs
into all of the standard OSX Frameworks directories like you mentioned; it
makes the /usr/local/Qt4.5 directory, which just has some configuration
sorts of files; and it makes /usr/local/Trolltech/Qt-4.5.2, which has the
full includes/lib/bin/etc directories that would be available on normal
non-"I got to do things my own way" operating systems.

You can use the Frameworks with Qt, or you can use the stuff in the
/usr/local/Trolltech directory.  A number of #include's in PySide use the
old-style Qt headers, like
#include <Qt/QtXml>
which can't be found in the Frameworks directories because there isn't a
framework for the generic <Qt/...> headers.

I guess the correct solution would be to fix PySide.  PySide shouldn't be
using those headers, and should be using the actual Qt module directores,
#include <QtXml/QtXml>
in which case the headers would be found in the available Qt Frameworks.
CMake automatically adds the Qt libraries with the -framework linker
arguments, should everything should be good to go by getting rid of the
<Qt/...> includes.

The one exception is that Trolltech doesn't include a Framework for
QtUiTools, which does get installed in the /usr/local/Trolltech directory
when building Qt manually.  In the pyside CMakeLists.txt, I had to add
set(QT_QTUITOOLS_INCLUDE_DIR
"/usr/local/Trolltech/Qt-4.5.2/include/QtUiTools")
in order for CMake to find those headers.  I'm not sure what you're supposed
to do if you just installed the binaries for Qt and Trolltech doesn't
provide a Framework for that.





2009/9/8 Mike Taylor <[email protected]>

>
> But there are still a couple of issues:
>
> * Qt headers still need to be found, which I fixed by adding
>
> set(QT_INCLUDE_DIR "/usr/local/Trolltech/Qt-4.5.2/include")
>
> to CMakeLists.txt.  I'm not sure what the best way of dealing with this is.
>
>
> FindQt4 defines QT_INCLUDE_DIR as far as I know.
> http://www.cmake.org/cmake/help/cmake2.6docs.html#module:FindQt4
>
> My knowledge about Mac OS is zero, but is /usr/local/Trolltech the default
> install dir? Any chance FindQt4 is looking in /usr/Trolltech?
>
>
> Actually Qt on the Mac is more complicated that. Brendan, did you build
> your own copy of Qt? I installed the binary package from the Qt web site and
> it has a /usr/local/Qt4.5 directory, but there's nothing of interest in
> there (i.e. no headers or libraries). There aren't any Trolltech directories
> anywhere that I can see.
>
> OS X has the concept of "Frameworks" and that is how Qt is packaged by
> default on the Mac. Frameworks are actually kind of nice. They are a
> packaging up of headers and libraries into a bundle. And, the bundles have
> versioning in them, so they can contain multiple versions.
>
> > ls -d /Library/Frameworks/Qt*
> /Library/Frameworks/Qt3Support.framework/
> /Library/Frameworks/QtOpenGL.framework/
> /Library/Frameworks/QtAssistant.framework/
> /Library/Frameworks/QtScript.framework/
> /Library/Frameworks/QtCore.framework/
> /Library/Frameworks/QtScriptTools.framework/
> /Library/Frameworks/QtDBus.framework/ /Library/Frameworks/QtSql.framework/
> /Library/Frameworks/QtDesigner.framework/
> /Library/Frameworks/QtSvg.framework/
> /Library/Frameworks/QtDesignerComponents.framework/
> /Library/Frameworks/QtTest.framework/
> /Library/Frameworks/QtGui.framework/
> /Library/Frameworks/QtWebKit.framework/
> /Library/Frameworks/QtHelp.framework/ /Library/Frameworks/QtXml.framework/
> /Library/Frameworks/QtNetwork.framework/
> /Library/Frameworks/QtXmlPatterns.framework/
>
> Those are the standard frameworks installed by Qt.
>
> You can use the includes from a framework or link to it by using the
> -framework flag on gcc (e.g. -framework QtCore). /Library/Framework is part
> of the standard framework path, so those frameworks will be found by the
> compiler.
>
> My quick glimpse of the CMake docs does indicate that it knows about OS X
> frameworks. But I'm not very familiar with the workings of CMake.
>
> I hope that helps. I hope I can scrape together some time to give building
> Pyslide a shot myself. I'm very excited about the project.
>
> /\/\ike
>
_______________________________________________
PySide mailing list
[email protected]
http://lists.openbossa.org/listinfo/pyside

Reply via email to