home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume24 / psroff3.0 / part08 / INSTALL < prev   
Encoding:
Text File  |  1991-10-09  |  11.3 KB  |  287 lines

  1.         Psroff 3.0 Installation Instructions
  2.             2.12 91/04/02
  3.  
  4. Please see the TROUBLE file if you have difficulties.
  5. The README file does provide a bit more background on some
  6. of these issues.  If you are installing for use with real
  7. ditroff, you'll also want to consult the DITROFF file during
  8. installation.  After building and installing psroff, you
  9. will want to read the MISC file for further tuning.
  10.  
  11. I suggest you print this file and read it while you work through
  12. your configuration.
  13.  
  14.     - Files that you will have to edit for proper configuration
  15.       of psroff:
  16.  
  17.         defs.h
  18.         Makefile
  19.         lib/psrofflib.S
  20.  
  21.       Important note: as shipped, both defs.h and Makefile are
  22.       configured for RS/6000 and most (if not all) stock System V's
  23.       with the exception of MANDIR and MANEXT in Makefile.
  24.       psrofflib.S MUST be changed for each system in the field.
  25.  
  26.     - Other files that may need to be customized for your needs:
  27.  
  28.         lib/*.lib
  29.         lib/*.fonts
  30.  
  31.       If you have to alter any other files, please contact me and
  32.       tell me where I've goofed.
  33.  
  34.     - If you have problems with the makefiles, you'll have to
  35.       find a System 5 make.  Many systems have them squirrelled
  36.       away in odd places.  Eg: Ultrix: /usr/bin/s5make
  37.  
  38.       If you have to do this, this should probably make things
  39.       work:
  40.         MAKE=<your System V make> export MAKE
  41.         <your System V make> <make arguments>
  42.       Eg:
  43.         MAKE=/usr/bin/s5make export MAKE
  44.         $(MAKE)
  45.  
  46.     - If you're building for ditroff input only, ignore the discussions
  47.       on HEADERSIZE and trofftype.
  48.  
  49.     - Ditroff input only: copy the appropriate
  50.       font width tables (try widthps/[A-Z]* for testing) to
  51.       /usr/lib/font/dev<type> and run makedev or mkfont on them.
  52.  
  53.     - NOTE: You may wish to try running "make check" at this
  54.       point, it should be able to find out the correct "HEADERSIZE"
  55.       and "trofftype" setting so you don't have to guess later on.
  56.       In any event, if you have problems and wish to ask me for help,
  57.       I will be requiring that you mail me a copy of the first
  58.       50 lines or so of "make check" output.
  59.  
  60.       If you're running on RISC Ultrix ignore any HEADERSIZE or
  61.       trofftype messages.  The reason for this is that RISC
  62.       Ultrix comes with width tables that cannot be read
  63.       by the RISC Ultrix troff, and make check will be fooled.
  64.       Define ASCIIWIDTHS in defs.h in this case.  trofftype
  65.       in psrofflib should be the -F variant in this case.
  66.  
  67.       Psroff builds width table files that *can* be used by
  68.       RISC/Ultrix troff.  You can tell if you need ASCIIWIDTHS
  69.       defined if:
  70.         echo ".fp 1 R" | troff -t > /dev/null
  71.       says something nasty about non-numeric character in file,
  72.       "may be non-ASCII".
  73.  
  74.       Apollos need the -F trofftype variant.  Their HEADERSIZE
  75.       calculation is strange.  You should set HEADERSIZE
  76.       to 0, and proceed with these instructions, but do NOT
  77.       install psroff.  Once you've built psroff, consult
  78.       the TROUBLE file on how to run "dumpft -gv", which
  79.       will tell you what your HEADERSIZE should be, then you
  80.       should rebuild, test and install.
  81.  
  82.       The dumpft -gv trick will actually work on most systems
  83.       (except RISC/Ultrix), but it requires you to rebuild psroff
  84.       twice...
  85.  
  86.     - NOTE: during installs as root, the makefiles attempt to be
  87.       careful about the modes of the files it creates.  HOWEVER,
  88.       some people do insist on "umask 077" for root, and I've
  89.       probably not fixed everything.  If psroff doesn't work
  90.       after an install, I suggest that you check root's umask,
  91.       and ensure that it's 002 or 022 before invoking any
  92.       of the makefile install entries.  If you forget, you
  93.       can invoke:
  94.         make fixperms
  95.       on the upper level makefile.
  96.  
  97.     - type "make unpackljfonts"  This will uudecode the font
  98.       files I've supplied and remove the .UU files.  This
  99.       step is unneccessary if you're not using Laserjets,
  100.       but it will regain you some space.
  101.  
  102.     - take a copy of the Makefile, defs.h and lib/psrofflib.S and
  103.       squirrel them away somewhere.  I'm not going to produce
  104.       patch-independent configurators, so if a patch has to come
  105.       out, they may well zap these three files.  If so, you'll
  106.       have to fix them manually.  Other files (lib/*.fonts and
  107.       lib/*.lib) are field-configurable, and it is possible I
  108.       will patch a few of them later (particularly lj.fonts).
  109.  
  110.     - If you are using the supplied width tables (widths/widthps),
  111.       all is fine.  But, if you're going to be driving another
  112.       package (eg: jetroff, tpscript, psdit, xtroff etc.) I suggest
  113.       you find the ditroff-format ASCII width tables (DESC, R, I,
  114.       S etc.), copy them to the appropriate widths/width<xx> area,
  115.       modify psrofflib.S to know how to use these width tables,
  116.       and possibly create *.fonts and *.lib files.  psrofflib.S
  117.       has copious comments on how to configure psroff.
  118.  
  119.       psdit, tpscript, xtroff, Pageview, Display Postscript and
  120.       xproof work reasonably well using the Postscript widths in
  121.       widthps.
  122.  
  123.     - edit Makefile and change whatever you need to.
  124.  
  125.     - edit defs.h and define either BSD or ATT.  A few other options will
  126.       pertain to you.  Take special note of HEADERSIZE.  Take a look
  127.       at /usr/lib/font/ftR.  Is it 224 bytes long?  If so, HEADERSIZE
  128.       should be 0.  Otherwise you will probably have to set it to the
  129.       size of your a.out.h structure.  VAX Ultrix and Sun appear to always
  130.       be HEADERSIZE = 32.  See remark about RISC Ultrix above.  If you're
  131.       Apollo, see remark above, plus info in TROUBLE file about Apollos.
  132.  
  133.       With Laserjet driving:
  134.  
  135.         MDLF    max # downloaded fonts supported per page.
  136.             LJ+ have this as 16.  Later models support more.
  137.         PRELOAD    # fonts statically downloaded.
  138.         SFP        enables SFP's with incremental font downloading.
  139.             Needs INCR.
  140.         INCR    enable incremental font downloading.  Needs PARTIAL.
  141.         PARTIAL    enable partial font downloading (only those characters
  142.             troff could possibly use are downloaded).  Needs PK.
  143.         PK        enables PK font handling.  If PK is off, the only
  144.             downloading supported is "cat <sfpfile>".
  145.         COMPRESS    permits you to compress SFP files.
  146.  
  147.         Why all this config?  Well, when INCR is defined up to 16 fonts
  148.         could be incore at any given moment, which can chew up a lot
  149.         of space (especially with large pointsize SFP's).  I very
  150.         much doubt that you can use INCR on a 64K address space machine.
  151.         (or even split I&D!)  But you really *do* want to use INCR,
  152.         otherwise you might blow the Laserjet's memory, and use of INCR
  153.         *dramatically* decreases the transmission time to the printer.
  154.  
  155.         If INCR not defined, at most only one font will be in core.
  156.  
  157.         If PARTIAL is defined, only those characters that troff *could*
  158.         use (remember ROMAN8 and MATH8 fonts have 192 characters each,
  159.         but R and S have less than 108 each) are loaded into memory,
  160.         and only they are downloaded to the Laserjet.  This cuts down
  161.         the amount of laserjet memory used for fonts by about half,
  162.         and also cuts down transmission time.
  163.  
  164.         If PARTIAL is undefined, whole PK or SFPs are downloaded.
  165.         if PK is undefined, only whole SFP's are downloaded.  And this
  166.         drops out the font handling machinery completely.  Actually,
  167.         on LJIII's this isn't such a bad idea unless you intend on
  168.         using more than the built-in scaleable fonts.
  169.  
  170.         Certain HPLJ clones will apparently not work with incremental
  171.         downloading.  If your printer screws up, undef INCR, but
  172.         make sure you have PARTIAL turned on and try again.
  173.  
  174.     - edit lib/psrofflib.S according to the instructions you find.
  175.       Take special note of -T/-F handling for troff (trofftype) -
  176.       check out your troff manual page!  Suns and Ultrix want
  177.       trofftype='-F/usr/lib/font/$width/ftXX'.  If you're running
  178.       postscript, you may want to eventually add the -Z option
  179.       to the entry to make your printer REALLY run fast.
  180.  
  181.     - If you're going to be driving HP Laserjets without a Postscript
  182.       cartridge:
  183.  
  184.       If you have PK fonts from TeX, ensure that PKFONTS
  185.       is set reasonably in the Makefile.  type:
  186.  
  187.         make buildljfonts
  188.  
  189.       This will generate under $NEWFONTS a whole pile of
  190.       SFP's (PK's if SFP2PK is set to a good sfp2pk program,
  191.       such as Rick Richardson's jetroff utility).  It will
  192.       also generate a $NEWFONTS/lj.fonts.new whose entries
  193.       should be *merged* (not copied) with lib/lj.fonts.
  194.       buildljfonts will generate a fair number of things,
  195.       so you may have to fix your Makefile/defs.h configuration.
  196.       Caution: if you have a lot of PK's, this will use up a LOT
  197.       of space - 5000 blocks or more!
  198.  
  199.       See LASERFONTS file for further information.
  200.  
  201.     - if you're going to be driving HP Laserjets, type:
  202.  
  203.         su root
  204.         make installljfonts
  205.  
  206.       This will attempt to copy the fonts I've supplied plus
  207.       any created in the previous step to the $LJF directory.
  208.  
  209.     - Type
  210.         make check
  211.  
  212.       This will attempt to figure out whether you got some of the
  213.       more important options correct (trofftype & HEADERSIZE).
  214.  
  215.     - Type
  216.  
  217.         make
  218.  
  219.       This will build everything (including width tables for any
  220.       HPLJ fonts you have supplied).
  221.  
  222.     - If you want to test psroff without actually installing it,
  223.       you will have to install the width tables (because troff's
  224.       limited as to where it will look for the width tables).
  225.       As root,
  226.  
  227.         make installwidths
  228.  
  229.       Will install the widths as FONTDIR/ps/ftXX (which shouldn't
  230.       conflict with anything you already have, and you'll be
  231.       able to run "make test" without doing the "make install" first.
  232.       Actually, psroff will work without this being done, but it
  233.       will use the width tables that came with your troff, so the
  234.       output will look a little odd (along with giving you a warning
  235.       to that effect).
  236.  
  237.     - Final installation:
  238.       As root,
  239.         make install
  240.         make installwidths
  241.       Will install everything.
  242.  
  243.     - "make test" will print a test page.  If you have problems,
  244.       please run "make test", fill in the blanks, and mail me the
  245.       result.  (See the README for the address).  The test page
  246.       exercises all R & S troff characters at 10 point, and displays
  247.       a few other characters at different point sizes.  If you don't
  248.       want to run psroff itself (eg: you've got troff2ps in a printer
  249.       daemon), type:
  250.  
  251.         make TEST
  252.         tbl TEST | troff -t -T<whatever> | <troff2ps server>
  253.  
  254.       "<troff2ps server>" may be "troff2ps -T<whatever> | your printer".
  255.       [The -T<whatever> would be replaced with -F/usr/lib/font/<whatever>/ftXX
  256.       if you are a -F type of troff (Suns, Ultrix etc.)]
  257.  
  258.       "TEST" is generated via make to include some information about
  259.       your configuration to help me diagnose your problems.
  260.  
  261.       If you're running on Laserjets, and you're just using my
  262.       fonts, you'll notice that the lines supposed to be 16 point
  263.       won't be, and the "6" will be missing in italic and bold.
  264.       Get some decent fonts.
  265.  
  266.       For ditroff input, "make dittest" and "make DITTEST" correspond
  267.       to "make test" and "make TEST".
  268.  
  269.       Once you've printed the test sheet, if there seems to be any problems,
  270.       consult the "TEST SHEET ANALYSIS" section of the TROUBLE files.
  271.  
  272.     - If you're running Postscript and you want to use n-up printing
  273.       (see psxlate(1)), you should obtain the psnup distribution
  274.       from comp.sources.misc.  After building psnup, copy the
  275.       nup.pro and nup.epi files to LIBDIR.
  276.  
  277.     - If you're running Display Postscript, via the "dpsexec"
  278.       program, you may want to apply the patch mentioned in
  279.       MISC.
  280.  
  281.     - If you have problems, read the TROUBLE file which describes
  282.       some trouble-shooting.
  283.  
  284.     - At this point (presuming that you've successfully built, tested
  285.       and installed everything), you might want to consult the MISC
  286.       file for further customization.
  287.