[mythtv] [ANNOUNCE] merging Qt4 branch to trunk
Paul Bender
pebender at san.rr.com
Mon Mar 17 23:25:04 UTC 2008
Chad wrote:
> On Mon, Mar 17, 2008 at 3:42 PM, Paul Bender <pebender at san.rr.com> wrote:
>
>> For the user community, the difficulty in bumping the minimum required
>> version of a package is more about how new the version is rather than
>> how often it is bumped. If the version is too new, then it causes the
>> problem that will be caused by using Qt 4.3 or 4.4: people will have to
>> build custom Qt packages that are not part of their distributions.
>
> Wouldn't the exact same reasoning apply to the reverse logic though?
> If you build for half of the distros, which "half" do you pick?
The short answer is:
no.
The long answer is:
It only applies when a newer version of the library obsoletes APIs from
an older version. Usually, libraries only do this with major releases of
the library. Minor releases usually add additional APIs without removing
existing APIs. In fact, minor releases are typically binary compatible.
The move from Qt 3 to Qt 4 was required because Qt 3 was EOL and not API
compatible with Qt 4.
However, my understanding is the Qt 4.3 is source and binary compatible
with Qt 4.2. That is, anything written for Qt 4.2 will compile on Qt 4.3
and anything compiled against Qt 4.2 will run on Qt 4.3. However,
because new APIs were introduced in Qt 4.3 any software that uses the
new APIs will not compile or run on Qt 4.2.
Therefore, unless the software needs functionality in Qt 4.3 it is
better to write it for Qt 4.2. Given that MythTV was currently compiles
on Qt 3.3, it is unlikely that it requires anything Qt 4.3. New features
in Qt 4.3 and Qt 4.4 might make things somewhat nicer, but I would doubt
that they are required.
Therefore, in this case, I think that it is better to make the minimum
required version no greater than Qt 4.2.
More information about the mythtv-dev
mailing list