home *** CD-ROM | disk | FTP | other *** search
/ Sams Teach Yourself C in 21 Days (6th Edition) / STYC216E.ISO / pc / DJGPP / v2apps / tex / old / TeX.README < prev    next >
Text File  |  1997-06-29  |  27KB  |  557 lines

  1.  
  2.       README file for the DJGPP port of TeX and related programs
  3.       ----------------------------------------------------------
  4.  
  5. I.  General
  6.     -------
  7.  
  8.     This is a port of the tex-k 7.0 distribution to DJGPP v2.01.
  9.     Tex-k is maintained by Karl Berry <kb@mail.tug.org>.  The original
  10.     tex-k distribution is on CTAN mirror sites; primary locations are:
  11.  
  12.       `ftp://ftp.cdrom.com/pub/tex/ctan'  (California, USA)
  13.       `ftp://ftp.dante.de/tex-archive'    (Germany)
  14.       `ftp://ftp.tex.ac.uk/tex-archive'   (England)
  15.  
  16.     (``CTAN'' means ``Comprehensive TeX Archive Network''.)  Tex-k is
  17.     stored on CTAN in several files:
  18.  
  19.        systems/web2c/texmflib.tar.gz
  20.        systems/web2c/web.tar.gz
  21.        systems/web2c/web2c.tar.gz
  22.        dviware/dvipsk.tar.gz
  23.        dviware/dviljk.tar.gz
  24.  
  25.     The ported binaries are split into several zip files:
  26.  
  27.       tmfl72.zip   -- the minimal TeX and Metafont library, required
  28.       webc70b.zip  -- Web2c, TeX and related programs, optional
  29.       kpse30b.zip  -- Kpathsea path-search library, optional
  30.       dvlj26b.zip  -- DVI drivers for LaserJet printers, optional
  31.       dvps566b.zip -- DVI driver for PostScript printers, optional
  32.       dvga09b.zip  -- DVI previewer for VGA adapters, optional
  33.       dvdj09b.zip  -- DVI drivers for DeskJet printers, optional
  34.  
  35.     `dvlj26b.zip' includes drivers for LaserJet (dvilj), LaserJet 2P
  36.     (dvilj2p) and LaserJet 4 or later (dvilj4) printers; most people
  37.     will only need one of these programs, for whatever printer they
  38.     have.
  39.  
  40.     `dvdj09b.zip' includes drivers for DeskJet 500 (dvi500), 500C
  41.     (dvi500c) and 550C (dvi550c) printers (dvi500c and dvi550c are
  42.     actually just ``symlinks'' to dvi500).
  43.  
  44.     If you'd like to download the entire binary distribution, just
  45.     grab all these files and install them as described in section II
  46.     below.  Note that some files appear in more than one zip archive,
  47.     so it is normal to get prompts from your unzip program asking
  48.     whether to overwrite existing files.
  49.  
  50.     Typically, if you only want to work with TeX and print DVI files,
  51.     you will need some, but not all, of the *b.zip files marked as
  52.     ``optional'' above.  However, since certain parts of tex-k require
  53.     other parts at run time, it is not enough to download only the
  54.     package that you need.  For example, if you only need to be able
  55.     to print DVI files on LaserJet printers, `dvlj26b.zip' alone will
  56.     not do, as it lacks the basic fonts used to generate missing fonts
  57.     on the fly.
  58.  
  59.     One way to describe the dependencies between the various parts of
  60.     tex-k is to list the main tasks that it allows you to perform and
  61.     tell which programs do you need to install for every task.  The
  62.     following matrix shows that:
  63.  
  64.                               tmfl  webc  kpse  dvlj  dvps  dvdj  dvga
  65.      -----------------------------------------------------------------
  66.      Generate DVI files           +     +
  67.      Print DVI on LJ printer   +                +
  68.      Print DVI on DJ printer   +                        +
  69.      Print DVI on PS printer   +                  +
  70.      Preview TeX documents     +                          +
  71.      Develop with Kpathsea     +              +
  72.      Print TeX documents       +     +          ?    ?     ?     +
  73.      Literate programming         +
  74.      -----------------------------------------------------------------
  75.      Approximate disk space    8M    7M    3M    8M    3M    2M    2M
  76.  
  77.      (A question mark `?' means you need one of the marked packages,
  78.      depending on the type of your printer.)
  79.  
  80.     The above table also lists the necessary disk space for each
  81.     package; if you install all of them, you will need about 27Mbytes.
  82.     (These numbers may vary depending on your disk cluster size.)
  83.  
  84.     Some other related tasks are printing Texinfo docs or converting
  85.     Texinfo documentation to PostScript format.  For these, you will
  86.     need the `texindex' program and the `texi2dvi' shell script from
  87.     the GNU Texinfo package (available in v2gnu/txiNNNb.zip from DJGPP
  88.     archives), and the packages required to print a DVI file on your
  89.     type of printer, as listed in the above matrix.  A modified
  90.     version of `texi2dvi' script that will work on MS-DOS is included
  91.     in webcNNb.zip archive (the original script has some Unixisms
  92.     built into it).
  93.  
  94.     The Web2c distribution (webcNNb.zip file) also includes Knuth's
  95.     `tangle' and `weave' programs.  These will probably be unused
  96.     unless you want to experiment with so-called ``Literate
  97.     programming'' whereby the sources and the formatted docs of a
  98.     program are produced from a single master file written in a
  99.     special language called `Web'.  (These programs are here because
  100.     TeX, MetaFont and other programs were themselves written by Donald
  101.     Knuth in Web.)  If you are interested in this, check out some of
  102.     the news groups devoted to literate programming.
  103.  
  104.     The sources are also divided into several zip files:
  105.  
  106.       webc70s.zip -- original Knuth's programs and Web-to-C converter
  107.       kpse30s.zip -- Kpathsea[rch] library for generic path searching
  108.       dvps566s.zip-- Dvipsk sources
  109.       dvlj26s.zip -- Dviljk sources
  110.       dvdj09s.zip -- sources for DeskJet drivers and the VGA previewer
  111.  
  112.  
  113. II. Installation of the binary packages
  114.     -----------------------------------
  115.  
  116.     - Unzip the downloaded archives from the root of your DJGPP
  117.       installation tree.  If you are doing this on Windows 9x, use an
  118.       unzip program that supports long filenames.  Don't forget the
  119.       `-d' switch if you are using PKUNZIP.
  120.  
  121.     - Add the following to your DJGPP.ENV, in it's common part (i.e.,
  122.       *before* any program-specific sections):
  123.  
  124.       +TEXMF=%DJDIR%/share/texmf
  125.       +TEXMFCNF=.;$SELFAUTODIR/share/texmf/web2c;%DJDIR%/share/texmf/web2c
  126.  
  127.       The default value of these variables built into all the programs
  128.       assumes DJGPP is installed in C:\DJGPP on your system; you can
  129.       leave DJGPP.ENV unchanged if that is indeed so.
  130.  
  131.       The reason I suggest to define TEXMF for all programs is that
  132.       the tex-k package includes almost 50 programs, most of which
  133.       need to know the value of TEXMF (otherwise, they won't be able
  134.       to find fonts and other required files), and it can be very
  135.       inconvenient to add a section in DJGPP.ENV for every program in
  136.       the package.
  137.  
  138.     - Add the following (large) fragment to your `info/dir' file:
  139.  
  140. TeX
  141. * DVI-to-Postscript: (dvips).        Translating TeX DVI files to PostScript.
  142. * Web2c: (web2c).                    TeX, Metafont, and companion programs.
  143. * bibtex: (web2c)bibtex invocation.             Maintaining bibliographies.
  144. * dmp: (web2c)dmp invocation.                   Troff->MPX (MetaPost pictures).
  145. * dvicopy: (web2c)dvicopy invocation.           Virtual font expansion
  146. * dvitomp: (web2c)dvitomp invocation.           DVI to MPX (MetaPost pictures).
  147. * dvitype: (web2c)dvitype invocation.           DVI to human-readable text.
  148. * gftodvi: (web2c)gftodvi invocation.           Generic font proofsheets.
  149. * gftopk: (web2c)gftopk invocation.             Generic to packed fonts.
  150. * gftype: (web2c)gftype invocation.             GF to human-readable text.
  151. * inimf: (web2c)inimf invocation.               Initial Metafont.
  152. * inimpost: (web2c)inimpost invocation.         Initial MetaPost.
  153. * initex: (web2c)initex invocation.             Initial TeX.
  154. * makempx: (web2c)makempx invocation.           MetaPost label typesetting.
  155. * mf: (web2c)mf invocation.                     Creating typeface families.
  156. * mft: (web2c)mft invocation.                   Prettyprinting Metafont source.
  157. * mltex: (web2c)MLTeX.                          Multi-lingual TeX.
  158. * mpost: (web2c)mpost invocation.               Creating technical diagrams.
  159. * mpto: (web2c)mpto invocation.                 MetaPost label extraction.
  160. * newer: (web2c)newer invocation.               Compare modification times.
  161. * patgen: (web2c)patgen invocation.             Creating hyphenation patterns.
  162. * pktogf: (web2c)pktogf invocation.             Packed to generic fonts.
  163. * pktype: (web2c)pktype invocation.             PK to human-readable text.
  164. * pltotf: (web2c)pltotf invocation.             Property list to TFM.
  165. * pooltype: (web2c)pooltype invocation.         Display WEB pool files.
  166. * tangle: (web2c)tangle invocation.             WEB to Pascal.
  167. * tex: (web2c)tex invocation.                   Typesetting.
  168. * tftopl: (web2c)tftopl invocation.             TFM -> property list.
  169. * vftovp: (web2c)vftovp invocation.             Virtual font -> virtual pl.
  170. * virmf: (web2c)virmf invocation.               Virgin Metafont.
  171. * virmpost: (web2c)virmpost invocation.         Virgin MetaPost.
  172. * virtex: (web2c)virtex invocation.             Virgin TeX.
  173. * vptovf: (web2c)vptovf invocation.             Virtual pl -> virtual font.
  174. * weave: (web2c)weave invocation.               WEB to TeX.
  175. * afm2tfm: (dvips)Invoking afm2tfm.  Making Type 1 fonts available to TeX.
  176. * dvips: (dvips)Invoking Dvips.      DVI-to-PostScript translator.
  177. * Kpathsea: (kpathsea).              File lookup along search paths.
  178. * kpsewhich: (kpathsea)Invoking kpsewhich.      TeX file searching.
  179. * MakeTeXMF: (kpathsea)MakeTeX scripts.         MF source generation.
  180. * MakeTeXPK: (kpathsea)MakeTeX scripts.         PK bitmap generation.
  181. * MakeTeXTeX: (kpathsea)MakeTeX scripts.        TeX source generation.
  182. * MakeTeXTFM: (kpathsea)MakeTeX scripts.        TeX font metric generation.
  183. * MakeTeXls-R: (kpathsea)Filename database.     Update ls-R.
  184.  
  185.  
  186.     - If you are new to TeX and TeX-related issues, be sure to read
  187.       the docs!  At the very least, you should read about the main
  188.       programs that you will be invoking, like `tex', `dvips',
  189.       `dvilj4' etc.  Another suggested reading is the Kpathsea docs
  190.       which describes the way the programs search for their files, and
  191.       is therefore the place to look for ways to customize your
  192.       installation.  (Note: `dvilj' programs are only documented in a
  193.       man page `dvilj.1' which unzips into your `info' subdirectory.
  194.       Use a pager such as `less' to read it.)
  195.  
  196.     - If you are familiar with TeX (or if you feel you are, after
  197.       reading the above docs), you might consider editing the
  198.       configuration files to customize the programs.
  199.  
  200.       The most important configuration file is %TEXMF%/web2c/texmf.cnf
  201.       which defines default values for many variables and search
  202.       paths.  It is extensively commented and will give you some ideas
  203.       about customization possibilities.  If you do change this file,
  204.       it is recommended to remove the word ``original'' from its first
  205.       line, so that if you build a new version of tex-k, the
  206.       installation process won't overwrite your customized file.
  207.  
  208.       Dvips has its own configuration file in %TEXMF%/dvips/config.ps;
  209.       this lists some default options and settings other than the
  210.       pathnames from texmf.cnf.  Other, printer-specific configuration
  211.       files are also there (look for the *.cfg files) and in the
  212.       `dvips/volker' subdirectory.
  213.  
  214.     - Make sure your system allows at least 50 files to be open
  215.       simultaneously.  Edit the FILES= setting of your CONFIG.SYS if
  216.       you need, and reboot the computer to let the new setting be in
  217.       effect.
  218.  
  219.     - If you installed kpse30b.zip to develop programs which use the
  220.       Kpathsea library, and your DJGPP library version is 2.01,
  221.       compile the patched library functions in the gnu/texk-7.0/djgpp
  222.       directory and put them into your library:
  223.  
  224.         gcc -c -O3 gnu/texk-7.0/djgpp/*.c
  225.         ar rvs c:/djgpp/lib/libc.a gnu/texk-7.0/djgpp/*.o
  226.  
  227.       (change "c:/djgpp" to the root of DJGPP installation on your
  228.       system). 
  229.  
  230.     - That's it!  Tex-k is now installed and ready for work.  If you
  231.       have any problems, check out the "Troubleshooting" section
  232.       below.
  233.  
  234.     The following are some general notes about the binary
  235.     distribution:
  236.  
  237.     - Tex-k on Unix uses a few shell scripts for certain jobs.  A
  238.       notable example is the MakeTeX* scripts that are used to
  239.       generate missing fonts on the fly.  The binary packages come
  240.       with both thes original shell scripts and with programs that
  241.       replace them.  The replacement programs don't require you to
  242.       install Bash and auxiliary utilities such as `cat', `cp', `mv'
  243.       etc., and also run faster.  However, if you would like to stick
  244.       to the original, rename or delete `maketex.exe', `makempx.exe'
  245.       and `dvihp.exe', remove the .sh extension from the bin/*.sh
  246.       files, and the tex-k programs will call shell scripts like on
  247.       Unix.
  248.  
  249.     - The first few times when you run the DVI drivers, they will
  250.       create several fonts on the fly.  This is normal behavior and
  251.       should not alarm you, since the distribution comes without any
  252.       gf or pk fonts whatsoever.  The generated fonts are left on your
  253.       system for future jobs, so as you process more and more
  254.       documents, the probability of bumping into a missing font will
  255.       get lower.
  256.  
  257.     - DviVGA is really a quick hack (it was not part of the original
  258.       tex-k package).  It doesn't support any high-resolution SVGA
  259.       modes; the magnification is fixed when you invoke the program
  260.       and you can't change it while it runs; the text at default
  261.       magnification is barely readable; and the user interface leaves
  262.       a lot to be desired.  (You can change magnification by using
  263.       the `-m' command-line option: 1000 means the default, larger
  264.       numbers magnify.  However, note that each non-default
  265.       magnification will cause fonts to be generated for suitable DPI
  266.       values.)  For now, DviVGA is provided as a stop-gap for those
  267.       who have no other way of viewing DVI files; volunteers are
  268.       welcome to add features.
  269.  
  270.       As an alternative for viewing DVI files, consider installing a
  271.       port of Ghostscript and GhostView for Windows that will allow
  272.       you to view PostScript files (you can use Dvips to generate
  273.       PostScript from DVI).
  274.  
  275.     - If your printer is not one of those for which a DVI driver is
  276.       included in this package, install Ghostscript and pipe the
  277.       output of `dvips' to it.  Ghostscript supports many more
  278.       different printers beyond LaserJet and DeskJet.
  279.  
  280.  
  281. III.Building the packages from sources
  282.     ----------------------------------
  283.  
  284.     - The following tools are REQUIRED to build and install tex-k
  285.       programs (the parentheses list filenames of binary distributions
  286.       you can download from DJGPP archives if you don't have a
  287.       particular package):
  288.  
  289.         Bash (bsh1147b.zip)
  290.     Fileutils (fil316b.zip)
  291.     Textutils (txt122b.zip)
  292.     Grep (grep20b.zip)
  293.     Patch (pat24b.zip)
  294.     Sh-utils (shl112b.zip)
  295.     Sed (sed118b.zip)
  296.     Diffutils (dif2721b.zip)
  297.     Findutils (find41b.zip)
  298.     Ed (ed-02b.zip)
  299.     Gawk (gwk303b.zip)
  300.     Bison (bsn125b.zip)
  301.     Flex (flx254b.zip)
  302.     cpio (only for installing the VF fonts, see below)
  303.  
  304.       All of these are available from the v2gnu directory on the usual
  305.       DJGPP sites.
  306.  
  307.     - tmfl72.zip and kpse30s.zip are required to build any part of the
  308.       package.  In addition, you will need to download the sources of
  309.       the programs you need to build (e.g., dvps566s.zip for Dvips).
  310.       You will also need about 65M bytes of disk space to build the
  311.       full package.
  312.  
  313.     - unzip the downloaded archives from the root of your DJGPP
  314.       installation tree.  If you are doing this on Windows 9x, use an
  315.       unzip program that supports long filenames.  Don't forget the
  316.       `-d' switch if you are using PKUNZIP.
  317.  
  318.       (The file `fnchange.lst' in the `djgpp' subdirectory is provided
  319.       in case you are unzipping the original tex-k distribution,
  320.       because some of the filenames there are incompatible with DOS
  321.       8+3 namespace.  If you submit `fnchange.lst' to `djtar' program
  322.       (from the DJGPP basic development environment) via the `-n'
  323.       option, it will automatically convert the problematic filenames
  324.       for you.)
  325.  
  326.       This will create the `gnu/texk-7.0' directory and unpack the
  327.       sources into the relevant subdirectories.  It will also create
  328.       the `share/texmf' directory and unpack the contents of Texmflib
  329.       library there.
  330.  
  331.     - For the port to work correctly, it needs patched versions of a
  332.       few library functions.  The patched sources are supplied in the
  333.       djgpp subdirectory of the kpseNNs.zip distribution.  Before
  334.       compiling tex-k, you need to compile the *.c files in the djgpp
  335.       subdirectory and put them into your libc.a:
  336.  
  337.           gcc -c -O3 *.c
  338.           ar rvs c:/djgpp/lib/libc.a *.o
  339.  
  340.       (Change "c:/djgpp" to the correct pathname of your DJGPP
  341.       installation.)
  342.  
  343.     - At this point, I suggest you to read the file
  344.       `kpathsea/INSTALL.txt'.  It includes a detailed yet very
  345.       readable description of the various options available to you at
  346.       build and installation time.
  347.  
  348.     - Make sure your TMPDIR environment variable points to a drive
  349.       with enough free space.  Many DJGPP installations set this
  350.       variable to a RAM disk for performance reasons.  Since RAM disks
  351.       tend to be small (a few Megabytes), a complex shell script may
  352.       fill it by temporary files, typically from pipes and `command`
  353.       expansions, after which point programs run by that shell will
  354.       start to fail.  The tex-k build process runs some very long and
  355.       complicated shell scripts which require around 4MB of free space
  356.       on TMPDIR filesystem (it failed for me when I had only 2.5MB).
  357.       If you cannot enlarge your RAM disk, point TMPDIR to a real disk
  358.       (the effect on the overall build time is insignificant, since
  359.       GCC will have hard time compiling some of the larger programs
  360.       with -O2 switch).  TMPDIR is usually set on the DJGPP.ENV file,
  361.       but you can override it by setting TMPDIR from the DOS prompt.
  362.  
  363.     - The source distribution comes pre-configured for DJGPP v2.01.
  364.       To build, chdir to the texk-7.0 directory and issue this command
  365.       to build the programs:
  366.  
  367.            make
  368.  
  369.       Building the full tex-k package takes a while (about 1.5 hours
  370.       on a 486/DX2-66, 30 minutes on a Pentium-166), so you might go
  371.       for a cup of coffee while it compiles.  The bulk of this time is
  372.       for building programs in `web2c' subdirectory, so if you don't
  373.       need TeX, Metafont and related programs, I suggest you not to
  374.       download webcNNs.zip.
  375.  
  376.       (Please note that I haven't tried to build parts of the
  377.       distribution, I only built all of the programs at once.  So if
  378.       you have any problems building, please report them to me.)
  379.  
  380.       The command "make" will by default build the kpathsea library,
  381.       the LJ4 and PostScript DVI drivers (`dvilj4' and `dvips') and
  382.       TeX, MetaFont and related programs in `web2c' directory.  If you
  383.       need other DVI drivers, you will need to issue these additional
  384.       commands:
  385.  
  386.         To build DVI drivers for other LaserJet printers:
  387.  
  388.            cd dviljk
  389.            make all  (or e.g. "make dvilj2p" if you need a
  390.                    driver for LaserJet 2P only)
  391.  
  392.     To build DVI drivers for DeskJet 500/550C printers and the DVI
  393.     previewer for VGA display:
  394.  
  395.            cd dvidjk
  396.            make
  397.  
  398.     To build the programs that replace MakeTeX... shell scripts
  399.     from the original package:
  400.  
  401.            cd kpathsea
  402.            make MakeTeXprogs
  403.  
  404.     - You might want to reconfigure the package, for instance if you
  405.       want to build it with other built-in default pathnames, or if
  406.       changes in the DJGPP library require different HAVE_XXX macros
  407.       to be defined before you recompile.  To this end, you need to
  408.       run the `configure' script in the texk-7.0 directory.  The
  409.       easiest way to do that is by calling the `djgpp/configure.bat'
  410.       batch file, which sets some environment variables and then
  411.       invokes Bash to run the script with necessary arguments.  (You
  412.       can edit the batch file if you want to run the script with
  413.       different arguments.)  The command is this:
  414.  
  415.         djgpp\configure
  416.  
  417.     - It is possible to configure and build tex-k from a directory
  418.       other than where the sources reside (useful when you cannot
  419.       write to that directory, like if it's on a CD-ROM).  In that
  420.       case, you need to invoke `configure.bat' with a single argument
  421.       which is the full pathname of the source directory.  For
  422.       example:
  423.  
  424.         f:\gnu\texk-7.0\djgpp\configure f:/gnu/texk-7.0
  425.  
  426.       Note that you MUST use Unix-style forward slashes in the
  427.       argument you pass to `configure.bat', or else it will fail.
  428.  
  429.     - The configure script will run for a while and recursively
  430.       configure the programs in subdirectories.
  431.  
  432.       Due to a bug in the original distribution, the file
  433.       `web2c/c-auto.h' generated by the configuration scripts has an
  434.       error that you will need to correct manually.  Launch your
  435.       editor, load that file and locate the line which begins with the
  436.       string "#define EDITOR".  You need to change this line so it
  437.       looks like this:
  438.  
  439.         #define EDITOR "emacs +%d %s"
  440.  
  441.       Also, edit the top-level Makefile so that DEFS includes this:
  442.  
  443.         -DEDITOR=\"emacs +%d %s\"
  444.  
  445.       (Sorry, this bug is non-trivial to correct, but I reported it to
  446.       Karl Berry, who maintains tex-k.)  If you would like the default
  447.       editor to be something other than Emacs, change this line
  448.       accordingly ("+%d" is replaced by the line number and "%s" by
  449.       the filename).
  450.  
  451.     - After running `configure', just say "make" as explained above.
  452.  
  453.     - If you have changed some of the programs in the package, it is a
  454.       good idea to run tests on them.  The Makefile in the web2c
  455.       directory has a large number of xxx-check targets, where xxx is
  456.       the name of a program; you can run these one by one by going
  457.       into web2c and saying like so:
  458.  
  459.          make gftopk-check
  460.  
  461.       Some of the tests appear to fail (`diff' prints some actual
  462.       differences between the test results and the reference files
  463.       that come with the package.  In most cases, this is normal
  464.       behavior (the programs were changed since the canonical results
  465.       were computed); the file `web2c/tests/check.log' includes the
  466.       output you should see for each test.  If your results coincide
  467.       with `check.log' (except for the version of the package that the
  468.       programs print), you are doing fine.
  469.  
  470.     - Before installing, if you already have a previous version of
  471.       tex-k installed, review your `texmf.cnf' configuration file (in
  472.       %TEXMF%/web2c directory).  If you have changed it from the
  473.       original, you might want the installation process to leave it
  474.       alone and not overwrite it with the fresh copy from the
  475.       distribution.  In that case, edit `texmf.cnf' and remove the
  476.       word "original" from its first line.  This tells the
  477.       installation process to refrain from replacing that file.
  478.  
  479.       Note that `texmf.cnf' file distributed with the binary packages
  480.       was edited to make it suitable for DJGPP, but the word
  481.       "original" was NOT removed from it!
  482.  
  483.     - To install the programs, say "make install" in the top
  484.       directory.  This will create missing directories and copy the
  485.       programs and auxiliary files to their places.  If you run "make"
  486.       without reconfiguring the package, the "install" targets assume
  487.       that DJGPP is rooted at C:\DJGPP and put everything there; you
  488.       can then move the files to their proper places, like so:
  489.  
  490.             cp -Rp c:/djgpp/* d:/gnu/djdir
  491.             rm -rf c:/djgpp
  492.  
  493.       (This assumes that DJGPP is actually installed in D:\GNU\DJDIR;
  494.       if not, change the last `cp' argument as appropriate.)
  495.  
  496.       If you have built additional programs (like the `dvivga'
  497.       previewer), you will need to install them manually, since the
  498.       default "install" targets won't install them.
  499.  
  500.       You might want to install the ``virtual fonts'' so you will be
  501.       able to use the built-in LJ4 fonts with `dvilj4'.  See the file
  502.       `dviljk/README.fonts' for details.  Note that these fonts can be
  503.       only used if you print with the `dvihp.exe' program or `dvihp'
  504.       shell script, and only with LJ4 (or better) printers.  Type
  505.       "make install-fonts" to install these fonts (you will need a
  506.       port of `cpio' program for this to work).
  507.  
  508. IV. Troubleshooting
  509.     ---------------
  510.  
  511.     I do NOT intend here to replace the various chapters in the docs
  512.     which explain how to solve problems and report bugs.  Please read
  513.     the docs whenever you see any seemingly abnormal behavior.  What's
  514.     below is intended to mention a few DOS- and DJGPP-specific
  515.     problems that you might see, and how to get around them.
  516.  
  517.     First, a word of warning.  Tex-k is a tremendously large and
  518.     complex package, with dozens of different programs, some of them
  519.     with many different options.  While porting it, I've made a good-
  520.     faith effort to test everything I could, including using it to
  521.     generate printed versions of various TeX and Texinfo documents.
  522.     However, since this is the first DJGPP port, some bugs must be
  523.     still there.  The operation of the programs on Windows 9x is
  524.     almost untested, so some LFN-related problems might lurk.  Please
  525.     treat this port accordingly and report possible bugs to the DJGPP
  526.     news group (comp.os.msdos.djgpp) first.
  527.  
  528.     One possible problem you could see is due to insufficient number
  529.     of available file handles.  `Dvilj' is particularly prone to this
  530.     problem.  If you ever see an error message to the effect that a
  531.     program has no more handles, edit your CONFIG.SYS and enlarge the
  532.     FILES= setting there.
  533.  
  534.     Another related problem manifests itself by an error message like
  535.     so:
  536.  
  537.         c:\djgpp\bin/mf.exe: cannot open
  538.  
  539.     This usually happens when a DVI driver finds a missing font and
  540.     invokes the MetaFont program to generate them on the fly.  Due to
  541.     peculiarities of file handles inheritance from parent to child
  542.     processes, the child process can sometimes fail to start because
  543.     the stub cannot open the .exe file.  I think I've fixed these
  544.     problems, so you shouldn't see such messages, but if you do,
  545.     please report the details.
  546.  
  547.     If the font-creation fails, a file named `missfont.log' is created
  548.     in the current directory, with the commands you should issue to
  549.     make these fonts.  Many times, invoking that file as a batch file
  550.     will create the missing fonts, so you could then invoke the DVI
  551.     driver again and it will work.
  552.  
  553.  
  554.     Happy TeXing!
  555.  
  556.                 Eli Zaretskii <eliz@is.elta.co.il>
  557.