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

David Cole david.cole at kitware.com
Mon Mar 30 10:57:25 EDT 2009


Looking at BundleUtilities.cmake, I would say the best thing to do here
would be to add some logic to the copy_resolved_item_into_bundle function
that deals with copying an entire framework as a directory copy rather than
just copying the library file itself.

I will think about what's the best way to handle that. The simplest thing
would just be a global flag that copies all frameworks as directories (or
just as files)... A better method would be to allow that setting on a
per-framework basis so that the bundle size can be kept to a minimum while
allowing the copying of resources for those frameworks that need it.

Any concrete code change suggestions from anyone? (A patch, for example...
:-)


David


On Sat, Mar 28, 2009 at 12:07 AM, Mike Jackson
<mike.jackson at bluequartz.net>wrote:

> 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
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20090330/2d6f3e61/attachment-0001.htm>


More information about the CMake mailing list