Short: groff-1.07 (src+bin) 2.x probably required This is GNU groff-1.07 for the Amiga. I have heard you can run this on KS1.3, but the behaviour is flaky. This is because ixemul.library is increasingly more suited for 2.x systems and not 1.x systems. Please don't expect much in the way of bug fixes if you find a problem under 1.x. My suggestion is that you upgrade to 2.x, it is much nicer anyway! ------------------------------------------------------------------------------ INSTALLING GROFF Pre-requisites (optional?): 1. PD ksh (pdksh.lha) can be found on aminet. Get it! You need it to run the Bourne shell scripts which are distributed with groff. To install: 1. Copy Amiga/libs/ixemul.library to sys:libs See Amiga/libs/COPYING.LIB for information on the distributability of this library. You can skip this step if you already have a version of ixemul.library. Just be sure it is version 39.45 or higher. 2. Assign etc: somewhere (anywhere). Sorry, but this is a requirement of ixemul.library, not groff. 3. Put the directories Amiga/usr/lib, Amiga/usr/bin and Amiga/usr/man in usr:lib, usr:bin, and usr:man respectively. This means you must assign a directory usr: to some place on your system. This is the easiest way to do it. -OR- Put the directory Amiga/usr/lib/groff/font anywhere you like and set the environment variable GROFF_FONT_PATH to point to that directory path. Put the directory Amiga/usr/lib/groff/tmac anywhere you like and set the environment variable GROFF_TMAC_PATH to point to that directory path. Put the files in Amiga/usr/bin/ somewhere in your path where they can be executed by you (and by groff). Put the directory Amiga/usr/man anywhere you like and configure for your man command (if you have one). You can run groff on these files to display them too! The file Amiga/usr/lib/groff/eign is the only orphan. If you use indxbib, create a usr:lib/groff/eign pathname for just this one file. Sorry, there is no way to change this without recompiling groff (specifically indxbib). 4. Assign tmp: to some directory where scratch files can be created. -OR- You can set the environment variable GROFF_TMPDIR to some directory name where scratch files can be created. 5. Set your stack to a large value (e.g. 200000). You can try smaller values. I have had good success with 32768 as my stack size (running groff from within pdksh). Smaller values may work too, but the first thing to change if groff fails is the stack size (make it bigger!). Once you have done these steps, you are ready to run groff. You can optionally set the environment variable GROFF_TYPESETTER to your default typesetter (ps, latin1, ascii, ...). This is a shortcut for the -T switch on the command line. Try these command lines (first one depends on pdksh being installed): sh usr:bin/gnroff -Tascii -man usr:man/man1/groff.1 or this for postscript output: gtroff -man usr:man/man1/groff.1 Please refer to the Amiga/usr/man/man1/groff.1 man page for information about the various environment variables and how they are used. Browse all the documentation in Amiga/usr/man/man1 for information about other groff related commands and post processors. ------------------------------------------------------------------------------ TROUBLESHOOTING: Problem: Groff guru's the machine or causes a software failure forcing reboot. Solutions: 1. Try setting stack to a higher value. 2. Are you running 2.x AmigaDOS/Kickstart? 3. Do you have enough free RAM? Problem: ixemul.library requester for etc: appears Solutions: 1. Assign etc: to anywhere (e.g. ram:). Problem: groff (as opposed to gtroff or gnroff) is failing. Solutions: 1. Try the equivalent gtroff command line. If you are running 1.3, ixemul.library could be causing problems for you. 2. Try the solutions listed above for software failure/guru. Refer to the man pages and the file PROBLEMS for more generic problems and solutions. ------------------------------------------------------------------------------ BUILDING GROFF This is non-trivial! You will need lots of stuff to get this going. You will need pdksh, rm, cat, tr, awk, c++ compiler (g++), and a make command as flexible as gmake. You will need lots of RAM. I have 9MB on my system and it is barely enough for some of the steps need to build groff. I used parts of GNU fileutils, GNU shellutils, BSD tr, GNU grep, GNU fgrep, GNU elvis, GNU awk, pdksh, SKsh-2.1 and GNU gcc to build groff. I also patched my version of pdksh to automatically source /etc/profile (i.e. etc:profile) every time it is invoked. This solves a lot of problems you would have otherwise. I provided the patched versions of a handful of files in the groff distribution (mdate.sh, groff-test), the configure.amiga script (adapted from configure), and the Makefile generated by configure. You will need to customize mdate.sh to your version of ls (I am using GNU fileutils ls). Many thanks to Markus Wild and his excellent ports of GCC 2.2.2 and PDksh. Without those programs and ixemul.library, none of this would be possible. Thank you Markus! To configure groff the way you want (you fill in ): sh configure.amiga --prefix= To build groff with gmake: gmake all gmake install My configuration (if it matters): A500 (CSA MMR MC68030/25 acclerator + 68882 math co-pro) 8MB fast RAM (4MB 32-bit, 4MB 16-bit) 1MB chip RAM GVP Series II with 40MB and 105MB hard disks. ------------------------------------------------------------------------------ Please feel free to contact me for help with this package. I regularly read comp.sys.amiga.applications, comp.sys.amiga.misc, and comp.sys.amiga.programmer. You can also e-mail me directly at the address listed below. Before you contact me, please read the documentation in this distribution first! I don't know how many times I answered questions for groff-1.06 where the answer was 'increase your stack size'. I am glad to help with any bugs you might find, especially if they relate to the Amiga. Groff specific problems should be reported as indicated in the file BUG-REPORTS. Cheers! Rob Tulloh (robtu@itx.isc.com) INTERACTIVE / SHL Systemhouse Tel: (512) 343 0376 Ext. 116 9442 Capital of Texas Hwy. North Fax: (512) 343 1414 Arboretum Plaza One, Suite 700 Net: robtu@itx.isc.com (soon to be robtu@aus.shl.com) Austin, Texas 78759