How can I run command line software with Rosetta 1?
Provided you're on a system where Rosetta v1 is available (up to and including Mac OS X 10.6), you can direct the system to execute the ppc segment of a universal binary using the arch
command.
/usr/bin/arch -arch ppc /path/to/some/executable
I've found it useful to keep a virtual machine in Parallels Desktop running OS X Server 10.6 with Xcode and other developer tools installed for this scenario, of compiling older software for obsolete PowerPC Mac systems.
On Leopard and Snow Leopard, you can and should use the arch
command. Unfortunately, this command does not exist on Tiger. (Well, the arch
program exists, but all it can do is print your current cpu architecture.)
Instead, on Tiger you can use the translate
binary directly:
/usr/libexec/oah/translate /path/to/some/executable
Note that you need to include the full path to the executable. If the executable doesn't exist (or you ignored the prior sentence), translate will fail with a very unhelpful segmentation fault
.