[OS X TeX] The Font Cache Problem

Justin C. Walker justin at mac.com
Sun Apr 13 18:05:00 EDT 2008

On Apr 13, 2008, at 14:11 , Adam M. Goldstein wrote:
> On Apr 13, 2008, at 3:49 PM, Alain Schremmer wrote:
>> On Apr 13, 2008, at 3:32 PM, Richard Koch wrote:
>>> Is anyone having font problems on Intel Leopard machines but can  
>>> guarantee that none of their standard apps use Rosetta?
>> My wife has a brand new iMac running on Leopard.
>> She is going home a couple of weeks ahead of me so I could install  
>> Wierda's  "minimum installation" and work on her machine for a  
>> while to see.
>> But what is Rosetta? Right now, I think that she has only NeoOffice  
>> and VLC.
> Rosetta is the software Apple provides so that Intel machines can  
> run PPC applications. You will use it without knowing it if you run  
> an application that's not compiled for Intel or is a universal  
> binary (i.e. is compiled for use on G4, G5, etc.), and you're on an  
> Intel machine.

Rosetta is used 'automatically' as Adam says.  For an  
'application' (i.e., "foo.app") that is listed as "universal", you can  
'get info' in Finder, and you should see a check-box to "open using  
Rosetta".  You can force the use of Rosetta by setting the checkbox,  
but AFAIK, you can't force the non-use of Rosetta, except by some  
fancy footwork (well, hand-work) at the keyboard to turn a universal  
app into an architecture-specific app.

For non-".app" programs (e.g., the stuff in texlive's "bin"  
directory), the Finder does not provide the Rosetta checkbox (or at  
least, I don't know how to get it to show up).

However, the system *will* run a chunk of PowerPC code using Rosetta,  
so it might be worthwhile to check the code that "might" be run during  
a TeX compilation to see whether it's pure PowerPC or Universal.

FWIW, on my Intel system, all of "binary" executables in "/usr/texbin"  
are pure i386.  Binaries elsewhere are typically universal.  I have  
seen the system decide to run some code with Rosetta when it isn't  
necessary, but that usually has been fixable by checking and clearing  
the Rosetta box.

For the not-so-faint-of-heart (command-line operations), one can  
"lipo" universal binaries to extract the intel versions.  Something  
like the following will work:

    mv /path/to/binary /somewhere/else
    cd /somewhere/else
    lipo binary -extract i386 binary-i386
    mv binary-i386 /path/to/binary

Once this is straightened out, you could mv the universal binary back  
where it belongs.



Justin C. Walker, Curmudgeon-At-Large
Institute for the Enhancement of the Director's Income
Experience is what you get
   when you don't get what you want.

More information about the MacOSX-TeX mailing list