Packaging Qt apps for Mac OS X

From MyLabWiki
Revision as of 23:41, 21 February 2011 by Alex (Talk | contribs)

Jump to: navigation, search

Once you got tired of reading and trying to comprehend Deploying an Application on Mac OS X in the Qt documentation, you realize at the bottom of the page that all you have to do is:

  1. Build your application in release mode
  2. Execute "macdeployqt myprog.app" (see -h for options)

This will bundle all the Qt libraries into the myprog.app - this will be approximately 40 MB. I guess one could still do the manual process for small applications that do not need all the Qt libraries. Or maybe the unnecessary libraries can be removed again manually?

Note: http://doc.qt.nokia.com/4.7/mac-differences.html#bundle-based-libraries

To create a .dmg we can either use the -dmg option to macdeployqt or use the Mac Disk Utility as describe here or here (without the encryption part).


Application and package icon

  1. Create icons with size: 16x16, 32x32, 128x128, 256x256 and 512x512
  2. Paste them into Icon Composer
  3. Save .icns file
    • Note: Icon Composer can also create .ico file but these use different sizes
  4. Put the .icns file in myprog.app/Contents/Resources
  5. Edit myprog.app/Contents/Info.plist
 <dict>
     <key>CFBundleIconFile</key>
     <string>myicons.icns</string>
     ...

Note: Steps 4 and 5 are TBC.

See the result: http://twitpic.com/42d86d

During runtime the dock icon can be changed by calling QWidget::setWindowIcon() on the main window[1].

Including addition data

How?

References

  1. Qt is Mac OS X Native

Bundle Programming Guide