Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
macbuild [2009/08/03 11:25]
rwcr
macbuild [2010/06/15 11:17] (current)
jared.jennings
Line 11: Line 11:
 Open a new terminal window and type Open a new terminal window and type
     $ sudo port install i386-elf-gcc     $ sudo port install i386-elf-gcc
-Find something else to do for a while; it will take at least a half hour to install, depending on your machine.+Find something else to do for a while; it will take over an hour hour to install, depending on your machine.
  
 With the toolchain installed, you should be able to run e.g. ''​i386-elf-gcc -v''​ and get version information. With the toolchain installed, you should be able to run e.g. ''​i386-elf-gcc -v''​ and get version information.
 +
 +If you have a recent Mac with 64-bit EFI, and intend on making an EFI binary to run on it, you will need a 64-bit cross compiler. I don't know of any automated way of getting one, so you'll have to build it yourself following the instructions at http://​wiki.osdev.org/​GCC_Cross-Compiler_for_x86_64 --- good luck!
  
 ===== Building gPXE ===== ===== Building gPXE =====
Line 26: Line 28:
     $ make bin-i386-efi/​sky2.efi CROSS_COMPILE=i386-elf- BINUTILS_DIR=/​usr/​local BFD_DIR=/​usr/​local/​i386-apple-darwin9.6.0/​i386-elf     $ make bin-i386-efi/​sky2.efi CROSS_COMPILE=i386-elf- BINUTILS_DIR=/​usr/​local BFD_DIR=/​usr/​local/​i386-apple-darwin9.6.0/​i386-elf
  
-It's necessary to be specific with the driver to exclude ''​undionly'',​ since that requires 16-bit code support that's not present in EFI targets. The ''​sky2''​ driver is used by some Macs, and ''​forcedeth''​ by others; you can also make ''​bin-i386-efi/​sky2--forcedeth.efi''​ for a gPXE that will support both.+It's necessary to be specific with the driver to exclude ''​undionly'',​ since that requires 16-bit code support that's not present in EFI targets. The ''​sky2''​ driver is used by some Macs, and ''​forcedeth''​ by others; you can also make ''​bin-i386-efi/​sky2-''''​-forcedeth.efi''​ for a gPXE that will support both
 + 
 +If you have a recent Mac, it may use a //64-bit// EFI environment. You can compile gPXE for that too, but you need a 64-bit cross-compiler (''​x86_64-elf-gcc''​). If you've got one, 
 + 
 +    $ make bin-x86_64-efi/​sky2.efi CROSS_COMPILE=x86_64-elf- BINUTILS_DIR=/​usr/​local BFD_DIR=/​usr/​local/​i386-apple-darwin9.6.0/​x86_64-elf 
 + 
 +Some recent Macs have Intel Ethernet chipsets. Try the e1000e driver instead of sky2.
  
 ===== Running gPXE under PC BIOS emulation on a Mac ===== ===== Running gPXE under PC BIOS emulation on a Mac =====

QR Code
QR Code macbuild (generated for current page)