[Interest] Build Qt from source in 32bit (-platform macx-clang-32)

René J.V. Bertin rjvbertin at gmail.com
Thu May 28 19:11:13 CEST 2015


On Thursday May 28 2015 17:49:13 Nuno Santos wrote:
> I have done the install_name_tool -id to change it accordingly:
> 
> QtGui.framework/QtGui:
> 	@loader_path/../Frameworks/QtGui.framework/Versions/5/QtGui (compatibility version 5.4.0, current version 5.4.1)
> 	@loader_path/../Frameworks/QtCore.framework/Versions/5/QtCore (compatibility version 5.4.0, current version 5.4.1)
> 
> But it didn’t work. I’m not sure when I have to use -id and -change. 

-id is for the libraries that are depended up, and should correspond to the location from which they are loaded.
-change is for binaries that depend on others, and tells where those shared libraries are to be found

So you may have to use both -id and -change on QtGui.framework/Versions/5/QtGui and family. Also note that install_name_tool -change can be tricky to get right: if something isn't perfectly right in the arguments it will just do nothing and exit as if all were fine.

So in QtGui.framework/Versions/5/QtGui you'll need to have the ID set to @loader_path/../Frameworks/QtGui.framework/Versions/5/QtGui
but it will also need to depend on
@loader_path/../Frameworks/QtCore.framework/Versions/5/QtCore

because otherwise it will not load.

Can you not make life easier on yourself? Do you "own" the host application, and/or does it install things in /Library/Application Support already? I think there would not be anything against installing a Qt copy somewhere in that "global" location. Unless your plugin is supposed to work with multiple applications :(

R.



More information about the Interest mailing list