[CMake] Qt 4.5 missing parts of QtGui.framework on OS X

Mike Jackson mike.jackson at bluequartz.net
Sat Mar 28 00:07:33 EDT 2009


I got a new Xeon Mac Pro so I thought I might start compiling some of
my own Qt based applications against a 64 bit build of Qt 4.5.
Generally things work Except when I use the BundleUtilities.cmake to
bundle the application.
  Seems somewhere during the copy of the framework (I have my guesses)
that _only_ the library within the framework and NOT the entire
framework is being copied. This makes sense on one hand as usually a
deployed Application doesn't need things like headers and such. Except
now with Qt 4.5 being cocoa based (for 64 bit builds) there is not a
.nib file that needs to be loaded. The .nib package is located in the
QtGui.framework/Resources directory but as I stated is NOT being
copied.
   According the error message that I got the .nib can be located in
the QtGui.framework/versions/current/Resources OR inside the Resources
directory of your own application (Next to your icon file.. ). So
there are a few ways to solve this problem but the easiest would be to
just adjust the BundleUtilities to copy the entire .framework package
instead of just parts of it. This would probably result in extra stuff
being put into the app bundle that isn't need but it is better to have
extra than not enough.
    The other way I can work around this would be to work out the path
to the .nib file within the QtGui.framework package and copy it over
to the OS X application bundle myself. I would rather not have to do
this but if there are major objections to above then I'll have to go
down this route.

 Comments from anyone?

Mike Jackson


More information about the CMake mailing list