Friday, July 20, 2007

The OSX Update from Hell

Thursday I installed an update on my MacBook that included QuickTime 7.2. I installed while I was watching a DVD during my lunch. I installed it using Software Update, of course. No big deal, I install updates like that all the time.

Friday morning I needed to do some edits to a document I had been working on for work. This was a Microsoft Word document, so naturally I've been using Office 2004 for things like that on my MacBook. I double clicked the document, and Word started. Then it stopped. Abruptly. I tried to open Word directly and the same thing. I tired launching Excel or PowerPoint -- same thing.

I noticed that there was an update for Office 2004 (11.3.6) available. So I downloaded it and tried to run it. It did the same thing.

At this point I knew that something in that update from Apple had crippled Rosetta. It was the only thing that made sense. I did some research. I found one thing that suggested reinstalling the most recent major update from Apple. So I did that. No luck.

I did some more research, and found that the problem stemmed from the presence of Java 6 Developer Preview on my MacBook. To uninstall that, here's what I did:

sudo lsbom -s -f /Library/Receipts/JavaSE6Release1.pkg/ > /tmp/files

I edited /tmp/files and chagned all the spaces to "\ " (backslash and a space) and then changed ./ to rm /. This changed the bindings file to remove the Java 6 bindings to OSX. So I now I just needed to execute this magic file.

sudo bash /tmp/files

Now I could delete Java 6.

rm -r /Library/receipts/JavaSE6Release1.pkg

Now I could rebind Java to OSX.

sudo update_prebinding

I actually deleted Java 5 (rm /Library/Receipts/JavaForMacOSX10.4Release5.pkg) also, and then re-installed it, but I probably didn't have to do that last step. Rosetta and thus Office were now back!


Greg said...

Hey I don't understand what you did. I am having the same problem from the Java 6 version and rosetta. Do you mean that you went into a text file and edited each space with a "\ " or that by typing that into the terminal it actually does that? Thank you for your help.

Michael said...

Yeah, I had to edit the text file and then run the command.