[KDE Dot News]
 faq
 flatforty
 contribute
 subscribe
 configure
 search
 rdf

 main
 parent


Why do QT version changes require `porting?'
by George Smiley on Wednesday 27/Sep/2000, @06:34
Hi,

I'm a happy KDE user, but am not familiar with the programming side of things. Could someone explain why upgrading to qt 2.0 and the upcoming qt 3.0 require the porting of the entire kde codebase, and not a simple recompilation?

It seems like none of the coding and bugfixing that went into kde 1.x is applicable to the upcoming kde2 release. As far as users are concerned, KDE2 could be a completely new desktop! It also seems like the reason why the number of KDE apps did not increase significantly in the last couple of years was because potential app-writers were waiting for kde2 to get released to avoid having to redo their work.

Now, according to the roadmap, the same situation will happen when going from qt 2.0 to qt 3.0... porting will be necessary. Which means that none of the apps that people write for KDE2.0 will be naturally available for KDE2.2.

If this is indeed the case, this seems to be a singularly brain-dead method. I'm surprised that Trolltech's paying customers do not bitch about the regular API changes. I would appreciate any clarifications.

George.
  Related Links
 ·   Articles on KDE Official News
 ·   Also by George Smiley
 ·   Contact author

Thread Threshold:

The Fine Print: The following comments are owned by whomever posted them.
( Reply )

Re: Why do QT version changes require `porting?'
by Arnd Bergmann on Wednesday 27/Sep/2000, @07:01
My understanding of the QT versioning scheme is that the major versions (like 1.x vs 2.x) may have slight source incompatibilities where there is no other sane solution, while the minor revisions (like 2.0 vs 2.1) are backwards compatible when they introduce new features and the bugfix releases (2.1.0 vs 2.1.1) have no interface changes at all.

The last major upgrade to 2.0 at least required a few changes on source level, see http://www.trolltech.com/developer/changes/2.0.html

[ Reply To This | View ]
Re: Why do QT version changes require `porting?'
by John Levon on Wednesday 27/Sep/2000, @07:14
As you say, you are not a programmer, and you clearly are not familiar with the concept of major versions.

Major versions break APIs. This is a good thing, because it means you can fix things that were wrong in the previous version, and add plenty of new features and facilities. This is exactly what happened with Qt 1 => Qt 2.

At the same time, KDE has been re-written almost completely. It hasn't been "ported" as such.

To illustrate, it would have been possible for the KDE team to have produced KDE2 using Qt 1.x (a bad idea, but possible). But since they were changing major version, it made perfect sense to move to the much-improved Qt 2 at the same time.

In actual fact, a simple port of a KDE1 app to KDE2 is pretty easy. Programmers don't generally bitch about API changes between major versions, because that is what major versions are for.

[ Reply To This | View ]
  • Re: Why do QT version changes require `porting?'
    by George Smiley on Wednesday 27/Sep/2000, @07:33
    OK, thanks for the clarification. I understand that going from qt1 to qt2 was necessary, and since KDE was completely rewritten anyway, I guess the apps would have to have been ported even if KDE had continued to use qt1.

    But will the same thing happen while going to qt3? I guess there won't be much difference in features between kde2.0.x based on qt2 and kde2.2.x based on qt3. Will apps require porting or will a mere recompile do?

    George.
    [ Reply To This | View ]
    • Re: Why do QT version changes require `porting?'
      by KDE User on Wednesday 27/Sep/2000, @07:34
      A mere recompiling they say. It will be mostly source compatible but not binary compatible.
      [ Reply To This | View ]

 
The Fine Print: The previous comments are owned by whomever posted them.
( Reply )

  "I'm holding out for a computer interface that plugs directly into my cerebral cortex." -- Sirtaj Singh Kang
KDE®, "K Desktop Environment", "KDE Dot News", "got the dot?" and the KDE Logo® are trademarks or registered trademarks of KDE e.V. in the European Union, the United States and other countries. All other trademarks and copyrights on this page are owned by their respective owners. Comments are owned by the poster. The rest: Copyright © 2000-2008 KDE e.V. for The KDE Project. For further information or comments on this site, please contact the Webmaster.
[ home | post article | flat forty | subscribe | search | rdf ]