[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