[gs-devel] [xefitra] comments on ghostscript-8.64rc1

Nelson H. F. Beebe beebe at math.utah.edu
Wed Feb 4 18:23:00 PST 2009


After several initial failures, I finally have got ghostscript-8.64rc1
to build on about 20 flavors of Unix in my test lab.  There are some
glitches, however, that should be fixed before the final 8.64 release.

The recipes that I found to work on most platforms look like this,
after unpacking the distribution and cd'ing to its directory:

	mkdir obj bin
	env LIBS='-L/usr/X11R6/lib/ -L/usr/local/lib -R/usr/local/lib -liconv' \
		./configure -C --disable-cups && make all

For some systems (e.g., gcc on GNU/Linux), change -R to -Wl,-rpath,.
For Red Hat GNU/Linux AMD64 systems, change lib to lib64.

The problems are these:

(1) --enable-cups should NOT be the default, because it is needed
    primarily only by GNU/Linux distributors.  That default broke
    most of my build attempts, but using --disable-cups solved most
    of the problems.

(2) If --enable-cups is selected, a "make install" should NOT
    install into the /usr tree, but instead into the $(prefix) tree.
    Only O/S distributors should ever write into /usr, and most of us
    should never do so.  CUPS is fragile, and I would be extremely
    unhappy if a "make install" broke printing for our thousands of
    users.

(2) The configure script MUST create the obj and bin directories;
    without them,  the build fails at the first attempt to write files
    into ./obj.  A "make distclean" removes them, and at present, they
    must be created manually with mkdir as shown above.  This problem
    has existed in many previous versions of ghostscript as well.

(3) Our systems all have -liconv, but most current GNU/Linux
    distributions do not provide it.  Ours have the library installed
    in the GNU-standard location /usr/local/lib (or /usr/local/lib64),
    but because of serious conflicts with gnomeware, that directory
    cannot be present in /etc/ld.so.conf.  This means that its
    directory path for linking and for execution must be provided at
    build time.  The configure script should check whether -liconv can
    be found without -L and -R (or -Wl,-rpath) options, and if not,
    retry with -L$(prefix)/lib and -R$(prefix)/lib and
    -Wl,-rpath,$(prefix)/lib.

I now have gs-8.64 installed on these platforms:

	FreeBSD 5 and 6 (IA-32)

	GNU/Linux (AMD64/EM64T, IA-32, IA-64, PowerPC, SPARC)
		[Red Hat, Fedora, Ubuntu, Gentoo distributions]

	Mac OS X (10.4.11 PowerPC and 10.5.6 EM64T)

	SGI IRIX (MIPS R10000 and R10000-SC)

	Sun Solaris 10 (SPARC and IA-32 and AMD64/EM64T)

I also have a GNU/Linux MIPS build underway, but it is still
unfinished at the time of writing this.

Many of our systems have multiple versions of ghostscript; on my Sun
Solaris SPARC systems, I have 42 versions going back to gs-2.6.1 of
28-Nov-1993, and I have on several occasions run tests of problematic
PostScript and PDF files with those older versions.

On these systems, gs-8.64rc1 still fails to build:

	GNU/Linux Alpha		last installed gs version: 8.54

	NetBSD 1.6 IA-32	last installed gs version: 8.56

	OpenBSD 3.9 IA-32	last installed gs version: 8.56

	OSF/1 Alpha		last installed gs version: 8.54

	Sun Solaris 8 SPARC	last installed gs version: 8.51

Tomorrow, I'll file separate reports to this list on each of those
failures.

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                    FAX: +1 801 581 4148                  -
- Department of Mathematics, 110 LCB    Internet e-mail: beebe at math.utah.edu  -
- 155 S 1400 E RM 233                       beebe at acm.org  beebe at computer.org -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------


More information about the gs-devel mailing list