Thanks for the prompt answer. This looks like a quick fix. The other problem I narrowed down (the actual reason the QTest.app failed to launch) is that the Cocoa build requires Resources that are not copied. So it's exiting with the following error:
Qt internal error: qt_menu.nib could not be loaded. The .nib file should be placed in QtGui.framework/Versions/Current/Resources/ or in the resources directory of your application bundle. Abort trap Which makes me really wonder if this bundle utility is ready for prime time? Brad On Mar 12, 2010, at 3:43 PM, Michael Jackson wrote: > I had to over-load the gp_item_default_embedded_path_override CMake > function with the following: > > # gp_item_default_embedded_path item default_embedded_path_var > # > # Return the path that others should refer to the item by when the item > # is embedded inside a bundle. > # > # Override on a per-project basis by providing a project-specific > # gp_item_default_embedded_path_override function. > # > function(gp_item_default_embedded_path_override item > default_embedded_path_var) > # > # The assumption here is that all executables in the bundle will be > # in same-level-directories inside the bundle. The parent directory > # of an executable inside the bundle should be MacOS or a sibling of > # MacOS and all embedded paths returned from here will begin with > # "@executable_path/../" and will work from all executables in all > # such same-level-directories inside the bundle. > # > > # By default, embed things right next to the main bundle executable: > # > set(path "@executable_path/../../Contents/MacOS") > > set(overridden 0) > # For Qt Based Plugins for the image formats, the plugins MUST > reside in > # the "PlugIns/imageformats" directory. Since THIS particular > project ONLY has > # the Qt Frameworks AND the plugins the below regex will suffice to > separate > # them from each other. On other projects we could use better logic > to > # put things where they go. Maybe using some "configured" CMake > List of libraries > # then looking through each list for the currect library being > fixed up. > # Embed .dylibs right next to the main bundle executable: > # > if(item MATCHES "\\.dylib$") > set(path "@executable_path/../PlugIns/imageformats") > set(overridden 1) > endif(item MATCHES "\\.dylib$") > > # Embed .so right next to the main bundle executable: > # > if(item MATCHES "\\.so$") > set(path "@executable_path/../Plugins/imageformats") > set(overridden 1) > endif(item MATCHES "\\.so$") > > # Embed frameworks in the embedded "Frameworks" directory (sibling > of MacOS): > # > if(NOT overridden) > if(item MATCHES "[^/]+\\.framework/") > set(path "@executable_path/../Frameworks") > set(overridden 1) > endif(item MATCHES "[^/]+\\.framework/") > endif(NOT overridden) > > set(${default_embedded_path_var} "${path}" PARENT_SCOPE) > endfunction(gp_item_default_embedded_path_override) > > Which is a complete hack (as it does not take into account other types > of plugins) but worked for my limited Application bundle. > ___________________________________________________________ > Mike Jackson www.bluequartz.net > Principal Software Engineer mike.jack...@bluequartz.net > BlueQuartz Software Dayton, Ohio > > > On Mar 12, 2010, at 3:20 PM, Bradley Lowekamp wrote: > >> Hello, >> >> I am trying run the QtTest-Package-Example from: >> http://www.vtk.org/Wiki/BundleUtilitiesExample >> and I am getting some errors on install. >> >> I am running CMake 2.8, with Qt 4.6.2 Cocoa universal, on OSX 10.6.2. >> >> During the fixup_bundle phase I am getting some error message and >> some undesired behavior. It appears the qt plugin libraries are >> problematic. Here is snipits of the output: >> >> - Install configuration: "" >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents/ >> Info.plist >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents/ >> MacOS >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents/ >> MacOS/QtTest >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents/ >> Resources >> -- Installing: ~/Downloads/QtTest/./install/./QtTest.app/Contents/ >> Resources/QtTest.icns >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqgif.dylib >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqico.dylib >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqjpeg.dylib >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqmng.dylib >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqsvg.dylib >> -- Installing: ~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqtiff.dylib >> -- fixup_bundle >> -- app='./install/QtTest.app' >> -- libs='~/Downloads/QtTest/./install/QtTest.app/Contents/MacOS/ >> plugins/imageformats/libqgif.dylib;~/Downloads/QtTest/./install/ >> QtTest.app/Contents/MacOS/plugins/imageformats/libqico.dylib;~/ >> Downloads/QtTest/./install/QtTest.app/Contents/MacOS/plugins/ >> imageformats/libqjpeg.dylib;~/Downloads/QtTest/./install/QtTest.app/ >> Contents/MacOS/plugins/imageformats/libqmng.dylib;~/Downloads/ >> QtTest/./install/QtTest.app/Contents/MacOS/plugins/imageformats/ >> libqsvg.dylib;~/Downloads/QtTest/./install/QtTest.app/Contents/MacOS/ >> plugins/imageformats/libqtiff.dylib' >> -- dirs='' >> -- fixup_bundle: preparing... >> -- >> warning: cannot resolve item 'libqgif.dylib' >> >> possible problems: >> need more directories? >> need to use InstallRequiredSystemLibraries? >> run in install tree instead of build tree? >> >> -- warning: gp_resolved_file_type non-absolute file 'libqgif.dylib' >> returning type 'other' -- possibly incorrect >> -- >> warning: cannot resolve item 'libqgif.dylib' >> >> possible problems: >> need more directories? >> need to use InstallRequiredSystemLibraries? >> run in install tree instead of build tree? >> >> warning: target 'libqgif.dylib' is not absolute... >> warning: target 'libqgif.dylib' does not exist... >> /usr/bin/otool: can't open file: libqgif.dylib (No such file or >> directory) >> -- >> >> (repeated for each other plugin) >> >> Then it copies things again: >> >> - fixup_bundle: copying... >> -- 1/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqgif.dylib' >> -- 2/22: copying '/Library/Frameworks/QtCore.framework/Versions/4/ >> QtCore' >> -- 3/22: copying '/Library/Frameworks/QtGui.framework/Versions/4/ >> QtGui' >> -- 4/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqico.dylib' >> -- 5/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqjpeg.dylib' >> -- 6/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqmng.dylib' >> -- 7/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqsvg.dylib' >> -- 8/22: copying '/Library/Frameworks/QtSvg.framework/Versions/4/ >> QtSvg' >> -- 9/22: copying '/Library/Frameworks/QtXml.framework/Versions/4/ >> QtXml' >> -- 10/22: copying '~/Downloads/QtTest/./install/QtTest.app/Contents/ >> MacOS/plugins/imageformats/libqtiff.dylib' >> -- 11/22: *NO~T* copying '~/Downloads/QtTest/./install/QtTest.app/ >> Contents/MacOS/QtTest' >> -- fixup_bundle: fixing... >> -- 12/22: fixing up '~/Downloads/QtTest/install/QtTest.app/Contents/ >> MacOS/libqgif.dylib' >> -- 13/22: fixing up '~/Downloads/QtTest/install/QtTest.app/Contents/ >> Frameworks/QtCore.framework/Versions/4/QtCore' >> -- 14/22: fixing up '~/Downloads/QtTest/install/QtTest.app/Contents/ >> Frameworks/QtGui.framework/Versions/4/QtGui' >> -- 15/22: fixing up '~/Downloads/QtTest/install/QtTest.app/Contents/ >> MacOS/libqico.dylib' >> -- 16/22: fixing up '~/Downloads/QtTest/install/QtTest.app/Contents/ >> MacOS/libqjpeg.dylib' >> >> >> And this may be useful too: >> $ otool -L /Developer/Applications/Qt/plugins/imageformats/ >> libqgif.dylib >> /Developer/Applications/Qt/plugins/imageformats/libqgif.dylib: >> libqgif.dylib (compatibility version 0.0.0, current version 0.0.0) >> QtGui.framework/Versions/4/QtGui (compatibility version 4.6.0, >> current version 4.6.2) >> QtCore.framework/Versions/4/QtCore (compatibility version 4.6.0, >> current version 4.6.2) >> /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current >> version 7.9.0) >> /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current >> version 103.0.0) >> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current >> version 125.0.0) >> >> >> Any thoughts or suggestions, before I dive too deep into >> GetPrerequisites.cmake? >> >> Thanks, >> Brad >> >> ======================================================== >> Bradley Lowekamp >> Lockheed Martin Contractor for >> Office of High Performance Computing and Communications >> National Library of Medicine >> blowek...@mail.nih.gov >> >> >> _______________________________________________ >> 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 > ======================================================== Bradley Lowekamp Lockheed Martin Contractor for Office of High Performance Computing and Communications National Library of Medicine blowek...@mail.nih.gov
_______________________________________________ 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