⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 make.txt

📁 实现并行算法
💻 TXT
📖 第 1 页 / 共 4 页
字号:
converted code.  If you want to change this name for some reason, it is
defined in unix-cc.mak.

Platform-specific notes
-----------------------

386 Unix:
	gcc versions older than 1.38 on Intel 80386 systems do not
compile Ghostscript correctly using the -O option.  Do not use -O in
these environments.
	gcc 1.39 under 386BSD has a bug that causes float-to-integer
conversions to compile incorrectly.  Do not use this version of gcc.
	X11R5 may need #include <stddef.h> in x_.h.
	Also see below regarding System V platforms.

Alpha (AXP) with OSF/1.2:
	The optimizer in cc is broken.  If you are compiling with cc, use
the unixansi.mak makefile, and the command line
		make CC=cc CFLAGS= EXTRALIBS=-lXmu
	If you are compiling with gcc, use version 2.5.0 or later, with
the unix-gcc.mak makefile, and the command line
		make CFLAGS=-O2 EXTRALIBS=-lXmu
(libXmu is needed to resolve reference _XEditResCheck from libXt, which is
peculiar to OSF/1.)
	You will probably need to change the definition of INSTALL in the
makefile from install to installbsd.

Alpha (AXP) with OSF/1.3:
	The optimizer is OK, but needs to be told to allocate extra table
space to be able to handle some of the larger files:
		make CC=cc CFLAGS="-Olimit 1000"
	The linker in the c89 compiler is broken, so even if you compile
with c89, you must link with cc.  You do not need to set EXTRALIBS=-lXmu.
	You will probably need to change the definition of INSTALL in the
makefile from install to installbsd.

Apollo:
	You must run the compiler in ANSI-compatible mode (i.e., set AK=
<null string> in the makefile); otherwise, it gives incorrect error
messages for any function declared as returning a float value.
	The Apollo compiler may not compile Ghostscript correctly.  If you
get unexpected crashes at run time, use gcc.

AT&T 7040 R3:
	If Ghostscript crashes on startup, recompile with -O0 in order to
avoid triggering compiler bugs.

Convex:
	Use unixansi.mak.  Do not invoke optimization (-O1): there
are compiler bugs that lead to incorrect code.  Set CFLAGS to
	-no -fn -tm c1

DEC:
	See Alpha (above) or VAX (below).  Also, you may get the following
message (or a similar one) when compiling on a DECstation, due to a
compiler bug:
	cfe: Fatal: _temp_19086.c: Segmentation violation
If this happens, try compiling with the -oldc switch.

DECStations with Ultrix:
	You may wish to set
  GS_LIB_DEFAULT=$(gsdatadir):/usr/lib/DPS/outline/decwin:$(gsdatadir)/fonts
in the makefile to add the Display PostScript font directory to the font
search path.
	You may need to use
		make CFLAGS="-Olimit 1000"
to tell the optimizer to allocate extra table space.
	The Ultrix 4.4 C compiler has a bug that makes it compile gdevm1.c
incorrectly.  Insert the following line in the makefile rule for
gdevm1.$(OBJ) (the body of the rule is empty in the standard distribution):
	$(CCC) -oldc gdevm1.c

Digital Unix:
	A user has suggested compiling with
		CFLAGS=-O -migrate -std1 $(XCFLAGS)
This is said to be the same compiler as is used on VMS. This is very strict,
but it doesn't produce pages of non-suppressible warnings like "Undefined
the ANSI standard library macro stdin".

gcc (all platforms):
	There is an optimizer bug in gcc 2.7.0, 2.7.1, and 2.7.2 that causes
these versions of gcc to generate incorrect code.  You can work around this
by adding the switch
		-Dconst=
to the compilation switches (CFLAGS).  Alternatively, you can rebuild gcc
with the following patch:

*** clean-ss-951203/expr.c	Sun Nov 26 08:18:07 1995
--- ss-951203/expr.c	Mon Dec  4 11:41:18 1995
*************** expand_expr (exp, target, tmode, modifie
*** 4582,4587 ****
  	   through a pointer to const does not mean that the value there can
  	   never change.  Languages where it can never change should
  	   also set TREE_STATIC.  */
! 	RTX_UNCHANGING_P (temp) = TREE_READONLY (exp) | TREE_STATIC (exp);
  	return temp;
        }
--- 4582,4588 ----
  	   through a pointer to const does not mean that the value there can
  	   never change.  Languages where it can never change should
  	   also set TREE_STATIC.  */
! 	RTX_UNCHANGING_P (temp) = TREE_READONLY (exp) & TREE_STATIC (exp);
  	return temp;
        }

If possible, compile with gcc 2.5.8 or 2.6.3, which don't have this bug.

GNU make (any platform):
	Current versions of GNU `make' have no problems, but GNU make 3.59
can't handle the final linking step in some cases; use the platform's
standard make (e.g., /bin/make) if this happens.
	
H-P RISC workstations:
	If you are using H-P's compiler, use the compiler flags -Ae +O3
(*not* -O) -DNOSYSTIME.  You may also need -D_POSIX_SOURCE.  In addition,
if you get the error message
	Initializing... Unrecoverable error: typecheck in .registerencoding
	Operand stack:
	    .notdef  0
when you start Ghostscript, you need to install the following patches to
fix bugs in H-P's C compiler: PHSS_5734, PHSS_5723.
	If you are using gcc 2.5.8, use -O, not -O2; the latter generates
incorrect code for at least one module (gsimage.c).

Intergraph Clipper:
	Recommended settings are:
		XCFLAGS=-w -Q -DSYSV -D__SVR3
		EXTRALIBS=-lbsd -lc_s
		CC=acc -knr
		PLATFORM=sysv_
Also, you will probably need to change the X11 driver specification from
	$(SHP)gsaddmod x11 -lib Xt X11 Xext
to
	$(SHP)gsaddmod x11 -lib Xt_s X11_s Xext

ISC Unix:
	For ISC Unix with gcc, an appropriate make invocation is:
	make XCFLAGS="-D__SVR3 -posix" LDFLAGS="-shlib -posix" \
	     EXTRALIBS="-linet -lnsl_s"
If this doesn't work for you, try removing the -shlib.  ISC Unix may
also need one or more of the following in EXTRALIBS: -lpt, -lc_s.
See also under "386 Unix" above.

Linux:
	If you are running gcc version 2.6.3 or later, you may run into
problems because of an incompatibility in object formats ("a.out" vs. ELF)
with the XFree86 library.  The typical symptom is that ld will complain that
some X library is not found or a whole slew of Xlib or Xt functions are not
found in the library, or you will get a message when you start Ghostscript
that the program or the shared library is in unrecognized format.  If this
happens, you might try adding the switches
	-b i486-linuxaout
to both CFLAGS and LDFLAGS in gcc-head.mak, and rebuilding from scratch
("make clean" and then "make").  If this doesn't help, or if other strange
things happen, contact your Linux supplier or support resource.

MIPS:
	There is apparently a bug in the MIPS C compiler which causes
gxdither.c to compile incorrectly if optimization is enabled (-O).  Until
a work-around is found, do not use -O with the MIPS C compiler.

NCR 3550:
	If you are using the NCR C Development Toolkit, you must use -O0 to
avoid triggering compiler bugs.

NeXTSTEP:
	Use unix-gcc.mak -- i.e., execute
		ln -s unix-gcc.mak Makefile

For NeXTSTEP versions before 3.2:
	edit gcc-head.mak ->
		change CC=gcc to CC=cc
		add -D_NEXT_SOURCE to CFLAGS
	change the two occurrences of sys/time.h to ansi/time.h, and
	change <dirent.h> in gp_unifs.c to <sys/dirent.h>

For NeXTSTEP 3.2:
	edit gcc-head.mak ->
		change CC=gcc to CC=cc
		add -D_POSIX_SOURCE tand remove -g in CFLAGS
		remove -Wstrict-prototypes in GCFLAGS

Add the following line to the end of Fontmap
		/Ohlfs	/Courier	;

If you are running the Pencom co-Xist X server (Development version), the X
headers and libraries are in the default places, so you should change the
definitions of XINCLUDE and XLIBDIRS in the makefile to empty strings.

Pyramid MIServer-S:
	See AT&T 7040 R3.

RS/6000:
	Many versions of the AIX C compiler have bugs that have prevented
Ghostscript from compiling and linking properly.  We believe that the
current Ghostscript release works around these bugs, and that using the
unix-cc.mak makefile with
	CC=cc
should work.  You must also edit the makefile (unixansi.mak or
unix-cc.mak) to change INSTALL to /usr/ucb/install.  (If -DSYSV produces a
complaint about the functions index and rindex not being defined, try
removing it.)  If the xlc 1.2.1 optimizer runs out of memory, you may need
to add -qmaxmem=4000 to CFLAGS.
	A user has reported that the AIX C compiler shipped with AIX 3.2.5
only compiles Ghostscript if invoked with c89 -D_POSIX_SOURCE and *without*
-O.  On the other hand, another user reported successful compilation using
the unix-ansi.mak makefile and the following command line:
	make CC=c89 XCFLAGS="-DOSY_AIX -D_ALL_SOURCE -qnoro -qmaxmem=3000 -bfl" $*
Apparently some (but not all) releases of the C library declare the hypot
function: if the declaration in math_.h produces an error message, try
removing it.  Also, the IBM X11R3 server is known to be buggy: use the MIT
X server if possible.
	The xlc 1.3.0.x compiler provided in AIX 3.2.5+ definitely will not
compile Ghostscript correctly if -O is used on all files.  A user has
reported that compiling the following files without -O is sufficient to
produce a working executable: z*.c, gsmatrix.c, gxstroke.c.
	Some installations of AIX 3.2.5 have what appears to be an incorrect
or inconsistent version of libXt.a in /usr/lpp/X11/lib.  If you get
XtShellStrings and XtStrings as unresolved externals when linking, set
XLIBDIRS=-L/usr/lpp/X11/lib/R5 -L/usr/lpp/X11/lib rather than just
XLIBDIRS=-L/usr/lpp/X11/lib.

SCO Unix/Xenix:
	The SCO Unix C compiler apparently can't handle the Pn macros
in std.h.  If you get strange compilation errors on SCO Unix, see if
you can get a compiler fix from SCO.  Meanwhile, to use gcc with SCO
ODT, see gcc-head.mak for the appropriate switch settings.  See also
under "386 Unix" above.
	gcc 2.3.3 produces code that causes a core dump on machines
that don't have hardware floating point, because of a bug in SCO's
floating point emulator.  Use a different compiler on these machines.
	If you aren't using the X11 driver, you need to add -lsocket
to the linker command (near the end of the unix-*.mak file) in order
to get the date/time functions linked in.
	If you want to use direct frame buffer addressing instead of X
Windows, include the relevant frame buffer device(s) (ega.dev, vga.dev,
etc.) and change gdevevga.c to gdevsco.c as indicated in devs.mak.  Note:
this does not work with SuperVGA displays, except for 800x600x16 mode.
Note also: If the display looks "smeared", try recompiling gdevpcfb.c with
-O0.  Note also: if Ghostscript crashes, use the -q switch and/or redirect
console output to a file.
	If your compiler accepts the -Xt and -Xa switches, use -Xt.
Even though this causes the compiler to use incorrect rules for
computing the result types of << and >>, -Xa enables "optimizations"
that produce incorrect code.
	For SCO ODT 2.0, in addition to -D__SVR3 and -DSYSV, you need to
specify -Dsco, -DUSG, and -DMALLOC_0_RETURNS_NULL.  For SCO ODT, you need
EXTRALIBS=-lX11 -lsocket -lmalloc, or maybe only -lsocket (depending on
the version), and for SCO ODT 2.0, you also need to specify -lc_s.  For
SCO Xenix, you need EXTRALIBS=-lmalloc.
	For all SCO systems, set XINCLUDE= and XLIBDIRS=.
	Please also read the section on "System V Unix platforms" below.

SGI:
	The SGI C compiler shipped with Irix 5.2 requires compiler
options -cckr.
	The SGI C compiler may produce warnings about "Undefined the ANSI
standard library defined macro stdin/stdout/stderr".  To suppress these
warnings, add
	-woff 608
to the definition of CFLAGS.
	The SGI C compiler shipped with Irix 6.1 and 6.2 will not compile
deflate.c (part of zlib) properly with optimization.  If you want to use the
zlib decompression filter, compile this file separately without -O.

Sun:
	The Sun unbundled C compiler (SC1.0) doesn't compile Ghostscript
properly if the -fast option is selected: Ghostscript core-dumps in
build_gs_font.  Use -g, or use gcc.
	The Sun version of dbx often gives up with an error message when
trying to load Ghostscript.  If this happens, use gdb instead.  (gdb is
more reliable than dbx in other ways as well.)
	There is a bug in zlib that results in an undefined symbol zmemcmp
when compiling with Sun cc.  Use gcc instead.

    SunOS
    -----
        In SunOS 4.1.[23], you may get these undefined symbols when linking:
                _get_wmShellWidgetClass
                _get_applicationShellWidgetClass
Compiling "-Bstatic -lXmu -Bdynamic" appears to work for SC1.0.  For gcc,
try adding "-static" to CFLAGS.  To solve the problem if you are using
OpenWindows 3.0 (X11R4-based Xt), please contact your local Sun office and

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -