[haiku-development] Re: GCC2 and GCC4 on same System

  • From: "Michael Lotz" <mmlr@xxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Sun, 26 Aug 2007 15:58:17 +0200

Hi There

> Wow. This is a topic that is definitely over my head, technically, 
> but 
> if I understand it correctly, this would beg another question: does 
> this 
> mean that we could compile a system that is primarily GCC4 and still 
> will run things like Productive, BeIDE, etc. ?

Yes this is the other way you can look at it. The thing that is shown 
by this "experiment" is that the applications and libraries are pretty 
self contained and that the interfaces are well defined. As Ingo said, 
it has to be verified and ensured that structures that are passed 
between applications are really compiler independant. The alignment of 
fields could have changed so that a GCC2 version of an app might expect 
a field somewhere else than a GCC4 app would and therefore crash. Even 
during my very limited testing until now I have encountered things that 
are not working and need to be further investigated.

To show that the other way around does work too I have taken some apps 
coming from the sample code compiled for R5 and also took BeIDE and put 
it inside a "/boot/gcc2" setup on a GCC4 compiled image:

http://haiku.mlotz.ch/legacyundergcc4.png

As you can see, BeIDE is working and also most of the other apps. 
DiskProbe from a GCC2 Haiku would crash though and also drag and drop 
does not fully work. That's what remains to be ironed out, but in 
general it looks pretty good. Productive would work in this setup too, 
if it would work under Haiku at all. It seems to get into an infinite 
loop when loading the settings currently (independant on which compiler 
you used to build Haiku). But the loading screen actually shows up 
under the GCC4 image which means that the library dependencies are met.

Regards
Michael

Other related posts: