[Development] Non-movable Qt build

Peter Kümmel syntheticpp at gmx.net
Fri Jan 4 09:35:33 CET 2013


On 02.01.2013 14:33, Lincoln Ramsay wrote:
> On 2/01/13 11:01 PM, Peter Kümmel wrote:
>> On 02.01.2013 13:50, Yves Bailly wrote:
>>> Le 02/01/2013 13:42, Thiago Macieira a écrit :
>>>> On quarta-feira, 2 de janeiro de 2013 10.53.03, Yves Bailly wrote:
>>>>> Does anyone knows where I could find the source code of the "official"
>>>>> installer, or at least some information about what it does? Because the
>>>>> installer does relocate the binaries, that would be a good starting point
>>>>> to relocate my own binaries...
>>>> It simply edits the qmake and QtCore DLL binaries, plus maybe some files in
>>>> mkspecs, changing a placeholder prefix to the installation dir.
>>> Editing binaries? hu, havent't done that since... a long time ;-) Changing some
>> Sounds like a really bad hack. And this was not changed in Qt 5?
>>
>
> QTDIR was a hack. You'd end up with the libs from one version of Qt and
> the plugins from another. Plus, Qt installations couldn't have parts in
> arbitrary locations like they can now.
>
> qt.conf is a hack because your app doesn't read it before it's found
> QtCore (so it can't change the Qt libs your app pulls in, only the
> plugins and data paths).

Isn't on Windows only PATH used to figure out which Dll to load? Then
qt.conf in the same dir as QtCore/qmake should be enough on Windows, or
missed I something?


BTW, one thing which becomes at least more complicated by this binary patching
is the signing of a shared library. I don't know if it is necessary (I only know
that you can sign a dll in .NET), but I could imagine some day it will be used,
e.g. to verify a program only uses by a specific build.
(I already see the discussions because of LGPL ;) )

Peter



More information about the Development mailing list