[tlbuild] sharable format files

Karl Berry karl at freefriends.org
Fri Sep 25 02:37:10 CEST 2009

Hello Nelson, TL builders, and all,

    The Sun Solaris SPARC and SGI IRIX versions work fine, but I see the
    error on GNU/Linux (AMD64, SPARC, IA-32, IA-64), and Solaris AMD64.

Sorry to hear it :(.

1. It is true that we do not ship .fmt's on the DVD.

2. It is nevertheless true that we want .fmt's for the different
   platforms to interoperate.  I believe this has been true in previous

3. I can confirm that a tex.fmt written with the checked-in i386-linux
   tex binary cannot be read with the checked-in sparc-solaris tex, and
   vice versa.  But the sparc-linux and i386-linux tex.fmt's are
   compatible.  So it is not solely endianness at issue.

3a. These things are also true for pdftex and luatex, so it's not
    engine-specific, either.  (Good.)

4. Debugging in the loadfmtfile routine showed me that the very first
   check, of the fmt file magic number, is failing.  Running

od -N 4 -t x1 ~/sparc-solaris-tex.fmt
   results in the four (hex) bytes 58 54 32 57, which is wrong.
   They should be 57 32 54 58, which is what i386-linux and sparc-linux
   output.  I assume the converse problem happens on input.
5. This comes from line 4012 of tex.ch:
dump_int(@"57325458);  {Web2C \TeX's magic constant: "W2TX"}

6. By default, the top-level configure is supposed to enable "dump
   sharing" (i.e., --enable-dump-share).  So unless you explicitly
   said configure --disable-dump-share (which I doubt), items should be
   swapped as needed.

7. I wonder if bigendianness was not correctly detected on sparc (maybe
   due to that weird endian-neutral thing it does now)?  Or if there is
   some (64-bit?) compiler flag interfering?
8. Vladimir, you built the sparc-solaris binaries.  Can you check your
   configure results?  And what is happening on aix, etc.?

9. I put a copy of my tex.fmt which I hope/believe is supposed to be the
   sharable one at http://tug.org/~karl/sharable-tex.fmt.gz.
   Platform builders, can you please see if your tex can read this? 
   I'm out of time for today.  That is:
wget http://tug.org/~karl/sharable-tex.fmt.gz
gunzip sharable-tex.fmt.gz
tex \&./sharable-tex \\end

   If you don't get the dreaded "Fatal format error", it is good.


More information about the tlbuild mailing list