Important: Please read the Qt Code of Conduct -

MacOS X - Framework executable VS libraries

  • I've built Qt from source on a Mac. I'm doing all the installation and packaging manually. I've managed to compile and run everything in Linux and Windows without a problem, but Mac is hell. So here is my question:

    I want to create a standalone app. In Windows and Linux I can simply copy the libraries (.dll or .so) to my project after compilation and set the PATH according to the copied libraries. I've compile Qt on Mac (-no-framework) and tried to simply copy the .dylib files to my installation, but I get 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.@

    So I decided to build the framework again (without -no-framework). I then copied the qt_menu.nib and the QtCore and QtGui executable to my project and then everything worked. However, copying the .dylib and the .nib files does not work.

    So I was wondering what exactly the difference between the framework and the dynamic library Qt compilation was. Normally it is not good to rely on external executable (rather on libraries), so is it fine if I use the Qt executable instead of the libraries? Any pros and cons to this?

Log in to reply