[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GRUB2 Build on Mac OS X

From: andre-smith
Subject: Re: GRUB2 Build on Mac OS X
Date: Thu, 08 Dec 2005 22:01:50 +0000

The Mac OS X GCC compiler will not build GRUB2, due static linking at address 
0x2000; this error can be confirmed during the configure process. If I could 
build GRUB2 using the Mac OS X GCC, I would be able to build GRUB2 images from 
Mac OS X.

The binary I attempted the build using the cross compiler tool chain 
powerpc-elf, would have executed on PowerPC Linux, but I would not build due to 
the nested function support being disabled in the Apple GCC.

Since the GRUB2 tools built using a Linux GCC compiler will suffice at the 
moment, I can see why the team is not overly concerned with this issue. If 
GRUB2 is going to be portable(Mac OS X), then some changes will be needed to 
accomplish this goal.

If stack execution support is disabled in future releases of other operating 
systems, it will become an issue of nested functions implemented with stack 
execution, and less of an Apple GCC compiler issue.

I do agree that more arguments will be needed on function calls if nested 
functions are not going to be used, if the list is willing to accept patches to 
address this issue.

As far as the GRUB2 tools, binaries executed on the PowerPC platform only need 
to be pure ELF. I am not sure if creating Mach-O boot binaries will yield any 
benefits for bringing up a kernel. If GRUB2 is to be used on the Mac OS X 
operating system, the tools need to be Mach-O based.


> -----Original Message-----
> From: Andrei Warkentin [mailto:address@hidden
> Sent: Thursday, December 8, 2005 08:10 PM
> To: 'The development of GRUB 2'
> Subject: Re: GRUB2 Build on Mac OS X
> I understand (still had my mind on GRUB 1 :)) - then looks like two
> GCC installations will be
> required to construct GRUB2 on OS X - one to generate OS X-hosted
> GRUB utilities (which will
> be Mach-O files), and one to generate ELF files  that will be used in  
> the booting process.
> On Dec 8, 2005, at 2:00 PM, Marco Gerards wrote:
> > Andrei Warkentin <address@hidden> writes:
> >
> > Hi Andrei,
> >
> >> There is another issue with GRUB2 on OS X which I am not sure has
> >> been brought up yet.
> >> Right now, AFAIK (but I haven't tested it), GRUB2 (the part that runs
> >> from OpenFrimware) can be built
> >> with a bootstrap powerpc-elf-targetted GCC hosted on OS X. However,
> >> the local GRUB2 binary (one that can run
> >> from OS X and perform installation and some such) needs to be
> >> compiled with the OS X compiler. Why? OS X doesn't use ELF -
> >> it uses Mach-O. If you want to be able to build GRUB2 in OS X with
> >> purely the OS X GCC, then the build procedure must take into account
> >> the Mach-O
> >> output format. AFAIK, new OpenFirmware versions (3.x) can boot Mach-O
> >> binaries but I haven't had a chance to experiment with this yet.
> >
> > You mean the utilities like grub-setup, grub-mkimage, grub-emu, etc?
> > They should be able to run on macos, right?  Of perhaps I am missing
> > your point.
> >
> > If those utilities can be build in a better way so nothing breaks and
> > it will work on macos, I am quite interested in hearing how to solve
> > that.
> >
> > Mach-O binaries for booting is a different subject.  We rely on ELF
> > files, grub-mkimage even creates ELF files and uses ELF load
> > segments.  Without it GRUB just won't work, unless grub-mkimage is
> > changed intensively.  So it seems easier just to use ELFs in any case.
> >
> > --
> > Marco
> >
> >
> >
> > _______________________________________________
> > Grub-devel mailing list
> > address@hidden
> >
> _______________________________________________
> Grub-devel mailing list
> address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]