There are many people who have had problems installing install Windows 7 64-bit on many older EFI based machines like the Aluminium Macbook Pro. The problem manifests itself in Vista SP1 64-bit.
There are a few articles around detailing why this is and many more showing how to solve it.
The problem is around the fact that the Windows Bootloader doesn’t seem to treat ISO9660 file version numbers correctly. To make a disc work and boot in EFI mode on these machines, you need to rebuild the ISO with ISO9660 version numbers suppressed.
However, all of these solutions required running Windows utilities to recreate the ISO. As I recently installed a new harddrive in my Macbook Pro I didn’t have a version of Windows installed that I could rebuild the ISO with.
I decided to find if I could create a compatible bootable Windows 7 DVD using only tools that are runnable under Mac OS X.
I used an article from jowie.com as a reference. It describes how to recreate the ISO with the fix using a 3rd-party Windows utility “Imgburn”.
I downloaded the latest version of “cdrecord” (formerly “cdrtools“) which includes the latest version of “mkisofs“, a *nix utility for creating ISO files with advanced options.
I managed to find the correct set of arguments to create a bootable DVD. DVD-RWs are my friend, although it only took 4 or 5 tries.
My machine is running Mac OS X Snow Leopard but I don’t see anything that won’t work on Leopard. These steps require the Mac OS X Developer Tools to be installed.
If you’re at this post, you may have already burned a copy of the Windows 7 DVD ISO (or a copy of Windows 7 Retail). I did, so I got the files for recreating the ISO from the DVD, you may choose to simply extract the contents of the ISO to a folder on your harddrive instead.
If you choose to use a folder, replace occurances of “/Volumes/GRC1CULXFRER_EN_DVD” with the folder you extracted the DVD to.
Here are the steps I took:
- Put the Windows 7 DVD in the drive or extract the ISO.
- Download the latest version of
cdrecordfrom:
http://freshmeat.net/projects/cdrecord/ - Extract the archive and run the following from Terminal:
make
make install - Once again from Terminal:
cd /opt/schily/bin/
./mkisofs -N -UDF -iso-level 4 -no-hfs -U -V GRC1CULXFRER_EN_DVD -no-emul-boot -b efi/bcd -c boot.catalog -o windows7rc.iso /Volumes/GRC1CULXFRER_EN_DVD - Now burn the new ISO to a disc. You can use Disk Utility, Toast or any other ISO burning tool to do the job
- If you haven’t already, make sure you have either free unpartitioned space or a spare partition to install Windows on to.
- Reboot your machine, hold down Option to bring up the boot menu
- Insert the DVD into the drive (if it isn’t in there aleady).
- Select the Windows CD, Windows 7 should now boot without problems
That is it.
Once Windows 7 is installed, insert a Snow Leopard disc to install the 64-bit Boot Camp drivers. If you don’t have Snow Leopard, you can download the latest Boot Camp drivers from Apple’s download section.
4 Comments
This was a great help getting my iMac 7,1 going with 64bit Windows 7. I kept getting the “Select Boot CD” error because of weird EFI issues. Using this guide I made a workable DVD for installing Windows 7 64bit within bootcamp. I did have to modify the path to the bootable image. I changed it from “efi/bcd” to “boot/etfsboot.com” and everything worked fine. It was nice to do this all within OSX and not to have to find a Windows machine to use other tools on. Thank you so much for thf help. I searched all over and finally found this info.
I’m feeling really stupid, but I can’t get past the make stage of cdrtools. I’ve got the developer tools installed and have been banging my head against a wall trying to get the tools to compile. At this point I’m trying to get smake to compile so I can try that, but its not working either. Do you remember if you had to do anything special to get it to install correctly?
I was so excited to find a way of installing without having to install my old XP just so I can re-burn the install DVD…
[Copied here from an email sent to Tom]
What is happening when you try to compile cdrtools? Can you send me the output? Are you still having the issue?
I don’t remember specifically doing anything there but then my machine has quite a few libraries and things installed as I do quite a bit of development, I may have something installed that you don’t.
Also, can you tell me what version of Mac OS, Xcode and what version of gcc is default:
To find out the version of gcc, run the following in Terminal:
ls /usr/bin/gcc -l
For reference, I have Mac OS X 10.6.2, XCode 3.1.3 and gcc 3.4.
[Copied here from an email reply from Tom]
Tom says:
I had just upgraded my hard drive and did a complete system restore using time machine, and have had this strange feeling that something is slightly off…
In any case I managed to install Windows 7 by using the imgburn method, and using my PC at work to create a new install disk. Worked the first time, so now I’m happy!
One Trackback
[...] quick Google of course resolved the problem (seriously, what did we do before the Internet?), which involved ripping the DVD onto [...]