which compilers do we want to support with KDE 4 ?

Albert Astals Cid aacid at kde.org
Sat Jan 21 12:24:28 GMT 2006

A Dissabte 21 Gener 2006 11:32, Alexander Neundorf va escriure:
> Hi,
> up to KDE 3.5 we still supported gcc 2.95, AFAIK this was dropped for KDE
> 4.
> Now I have major problems compiling kdelibs/kxmlcore/ using gcc 3.2.3, IOW
> gcc 3.2.3 isn't able to compile HashMap/HashTable/HashMapPtrSpec without 
> bigger changes. I already got a bit further but now I get an internal
> compiler error.
> AFAIK this is code from Apple, which use gcc >= 4.0.
> Do we want to support gcc < 3.4 for KDE 4 ?
> I think we should, otherwise we will loose a lot of developer time
> (updating g++ means updating all C++ libs on the system, AFAIK), including
> mine.

Well, there are a lot of distros out there that come with gcc 4.0, it should 
not be too difficult to install one. Ok, that was a silly answer, i know ...

Now onto the real deal, do we want to support, older compilers?

For me, it seems the KDE developers are quite up-to-date in what distributions 
updates says, that means the most of us are almost always with latest 
compilers. That means supporting older compilers is a problem for most of us, 
as the code we write compiles with the compiler we are using, so we commit 
it, then we discover it does not compile on older versions.

So, what to do? How can i be sure that my code will compile in a compiler i 
don't have? The only answers i can find is:

a) Everyone uses the lowest common denominator compiler. This is very 
difficult as usually you do not want to be running older versions when newer 
are available

b) We write "specs compilant" code. This is not as difficult as a) difficult, 
you can check it with a book, or wathever, the problem is that older 
compilers we could want to support are not as specs compilant as we would 
want, so this does not help either.

c) There is someone that does the changes to make it compatible with older 
compilers. I am not completely against this, but the problem is that 
sometimes it results in "worse" code.

So what is my opinion? 

Be a bit agressive now and ask for gcc 4.0.x or similar capable compilers for 
KDE 4.x because KDE 4 will be around for quite time (maybe 3 years?) And i'm 
sure in 3 years time noone will be even be using gcc 4.0.x so why should we 
keep supporting gcc 3.2?


> Is gcc 3.3 able to compile kdelibs/kxmlcore ?
> Is gcc 3.3 ABI compatible to gcc 3.2 ?
> What about gcc 3.0 and gcc 3.1 ?
> But I am afraid I am not able to get kxmlcore compiling with gcc 3.2.3,
> somebody who knows more about this code and about templates should have a
> look or give me some assistence.
> Bye
> Alex
> P.S. this is currently the reason why there is no progress with the cmake
> build of kdelibs

LLama Gratis a cualquier PC del Mundo. 
Llamadas a fijos y móviles desde 1 céntimo por minuto. 

More information about the kde-core-devel mailing list