bug-ghostscript
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GNU GS-5.50 does not work consistently on Strong ARM board


From: Nikunj A. Dadhania
Subject: GNU GS-5.50 does not work consistently on Strong ARM board
Date: 04 Jul 2001 14:31:30 +0530
User-agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.7

------------------------------------------------------------------------
Symptoms:

GNU GS 5.50 does not work consistently on the Strong ARM board.
Sometimes it generates the output file and sometimes it just creates
a file of 2 Bytes. And sometimes it fails completely. 






------------------------------------------------------------------------
Ghostscript version (or include output from "gs -h"):

GNU GS 5.50
------------------------------------------------------------------------
Where you got Ghostscript:

ftp://ftp.gnu.org/pub/gnu/
------------------------------------------------------------------------
Hardware system you are using:

Assabet board. Strong ARM processor 32 MB RAM, 32 MB FLASH.

------------------------------------------------------------------------
Operating system you are using:

GNU/Linux. 

------------------------------------------------------------------------
C compiler you are using, including its version, if you compiled
Ghostscript yourself:

arm-linux-gcc ( i am cross compiling GS on an Intel machine same operating
                system. Intel P-II, 128MB RAM)

------------------------------------------------------------------------
If you compiled Ghostscript yourself, changes you made to the makefiles:

I have made a lot of change in it so i am giving a patch here :)

As I am compiling it for ARM I have generated arch.h in the arm board
using genarch. and i have disable genarch in the make file.


***********************************************************************

diff -ruN gs5.50/gs.mak downloads/gs5.50/gs.mak
--- gs5.50/gs.mak       Mon Feb 14 07:59:04 2000
+++ downloads/gs5.50/gs.mak     Thu Jun 28 16:50:39 2001
@@ -249,7 +249,7 @@
        $(RM_) makefile
 
 clean: mostlyclean
-       $(RM_) $(GLGEN)arch.h
+#      $(RM_) $(GLGEN)arch.h
        $(RM_) $(GS_XE)
 
 #****** FOLLOWING IS WRONG, NEEDS TO BE PER-SUBSYSTEM ******
diff -ruN gs5.50/lib.mak downloads/gs5.50/lib.mak
--- gs5.50/lib.mak      Mon Feb 14 07:58:51 2000
+++ downloads/gs5.50/lib.mak    Wed Jun 27 21:38:05 2001
@@ -54,7 +54,7 @@
 std_h=$(GLSRC)std.h $(arch_h) $(stdpre_h)
 
 $(GLGEN)arch.h: $(GENARCH_XE)
-       $(GENARCH_XE) $(GLGEN)arch.h
+#      $(GENARCH_XE) $(GLGEN)arch.h
 
 # Platform interfaces
 
diff -ruN gs5.50/makefile downloads/gs5.50/makefile
--- gs5.50/makefile     Mon Feb 14 07:58:41 2000
+++ downloads/gs5.50/makefile   Wed Jun 27 21:38:33 2001
@@ -166,9 +166,9 @@
 # Define how to build the library archives.  (These are not used in any
 # standard configuration.)
 
-AR=ar
+AR=arm-linux-ar
 ARFLAGS=qc
-RANLIB=ranlib
+RANLIB=arm-linux-ranlib
 
 # Define the configuration ID.  Read gs.mak carefully before changing this.
 
@@ -178,7 +178,7 @@
 
 # Define the name of the C compiler.
 
-CC=gcc
+CC=arm-linux-gcc
 
 # Define the name of the linker for the final link step.
 # Normally this is the same as the C compiler.
@@ -275,8 +275,8 @@
 # Choose the language feature(s) to include.  See gs.mak for details.
 
 #FEATURE_DEVS=psl3.dev pdf.dev dpsnext.dev pipe.dev rasterop.dev
-FEATURE_DEVS=psl3.dev pdf.dev dpsnext.dev pipe.dev
-
+FEATURE_DEVS=psl3.dev 
+#pdf.dev dpsnext.dev pipe.dev 
 # Choose whether to compile the .ps initialization files into the executable.
 # See gs.mak for details.
 
@@ -301,7 +301,8 @@
 # Choose the device(s) to include.  See devs.mak for details,
 # devs.mak and contrib.mak for the list of available devices.
 
-DEVICE_DEVS=x11.dev x11alpha.dev x11cmyk.dev x11gray2.dev x11gray4.dev 
x11mono.dev
+DEVICE_DEVS=
+#x11.dev x11alpha.dev x11cmyk.dev x11gray2.dev x11gray4.dev x11mono.dev
 #DEVICE_DEVS1=bmpmono.dev bmpamono.dev posync.dev
 DEVICE_DEVS1=
 DEVICE_DEVS2=
@@ -309,16 +310,23 @@
 DEVICE_DEVS4=cdeskjet.dev cdjcolor.dev cdjmono.dev cdj550.dev pj.dev pjxl.dev 
pjxl300.dev
 DEVICE_DEVS5=uniprint.dev
 DEVICE_DEVS6=bj10e.dev bj200.dev bjc600.dev bjc800.dev
-DEVICE_DEVS7=faxg3.dev faxg32d.dev faxg4.dev
-DEVICE_DEVS8=pcxmono.dev pcxgray.dev pcx16.dev pcx256.dev pcx24b.dev 
pcxcmyk.dev
-DEVICE_DEVS9=pbm.dev pbmraw.dev pgm.dev pgmraw.dev pgnm.dev pgnmraw.dev 
pnm.dev pnmraw.dev ppm.dev ppmraw.dev pkm.dev pkmraw.dev
-DEVICE_DEVS10=tiffcrle.dev tiffg3.dev tiffg32d.dev tiffg4.dev tifflzw.dev 
tiffpack.dev
-DEVICE_DEVS11=tiff12nc.dev tiff24nc.dev
+DEVICE_DEVS7=
+#faxg3.dev faxg32d.dev faxg4.dev
+DEVICE_DEVS8=
+#pcxmono.dev pcxgray.dev pcx16.dev pcx256.dev pcx24b.dev pcxcmyk.dev
+DEVICE_DEVS9=
+#pbm.dev pbmraw.dev pgm.dev pgmraw.dev pgnm.dev pgnmraw.dev pnm.dev pnmraw.dev 
ppm.dev ppmraw.dev pkm.dev pkmraw.dev
+DEVICE_DEVS10=
+#tiffcrle.dev tiffg3.dev tiffg32d.dev tiffg4.dev tifflzw.dev tiffpack.dev
+DEVICE_DEVS11=
+#tiff12nc.dev tiff24nc.dev
 DEVICE_DEVS12=psmono.dev psgray.dev psrgb.dev bit.dev bitrgb.dev bitcmyk.dev
-DEVICE_DEVS13=pngmono.dev pnggray.dev png16.dev png256.dev png16m.dev
-DEVICE_DEVS14=jpeg.dev jpeggray.dev
-DEVICE_DEVS15=pdfwrite.dev pswrite.dev epswrite.dev pxlmono.dev pxlcolor.dev
-
+DEVICE_DEVS13=
+#pngmono.dev pnggray.dev png16.dev png256.dev png16m.dev
+DEVICE_DEVS14=
+#jpeg.dev jpeggray.dev
+DEVICE_DEVS15=pswrite.dev epswrite.dev pxlmono.dev pxlcolor.dev
+#pdfwrite.dev 
 # ---------------------------- End of options --------------------------- #
 
 # Define the name of the partial makefile that specifies options --
@@ -336,7 +344,7 @@
 
 CCFLAGS=$(GENOPT) $(CFLAGS)
 CC_=$(CC) `cat $(AK)` $(CCFLAGS)
-CCAUX=$(CC)
+CCAUX=gcc
 #We can't use -fomit-frame-pointer with -pg....
 #CC_LEAF=$(CC_)
 CC_LEAF=$(CC_) -fomit-frame-pointer
diff -ruN gs5.50/obj/arch.h downloads/gs5.50/obj/arch.h
--- gs5.50/obj/arch.h   Thu Jan  1 05:30:00 1970
+++ downloads/gs5.50/obj/arch.h Thu Jun 28 16:56:25 2001
@@ -0,0 +1,34 @@
+/* Parameters derived from machine and compiler architecture */
+
+        /* ---------------- Scalar alignments ---------------- */
+
+#define arch_align_short_mod 2
+#define arch_align_int_mod 4
+#define arch_align_long_mod 4
+#define arch_align_ptr_mod 4
+#define arch_align_float_mod 4
+#define arch_align_double_mod 4
+
+        /* ---------------- Scalar sizes ---------------- */
+
+#define arch_log2_sizeof_short 1
+#define arch_log2_sizeof_int 2
+#define arch_log2_sizeof_long 2
+#define arch_sizeof_ptr 4
+#define arch_sizeof_float 4
+#define arch_sizeof_double 8
+
+        /* ---------------- Unsigned max values ---------------- */
+
+#define arch_max_uchar ((unsigned char)0xff + (unsigned char)0)
+#define arch_max_ushort ((unsigned short)0xffff + (unsigned short)0)
+#define arch_max_uint ((unsigned int)0xffffffff + (unsigned int)0)
+#define arch_max_ulong ((unsigned long)0xffffffffL + (unsigned long)0)
+
+        /* ---------------- Miscellaneous ---------------- */
+
+#define arch_is_big_endian 0
+#define arch_ptrs_are_signed 0
+#define arch_floats_are_IEEE 1
+#define arch_arith_rshift 2
+#define arch_can_shift_full_long 1
diff -ruN gs5.50/unix-gcc.mak downloads/gs5.50/unix-gcc.mak
--- gs5.50/unix-gcc.mak Mon Feb 14 07:58:41 2000
+++ downloads/gs5.50/unix-gcc.mak       Wed Jun 27 21:38:33 2001
@@ -166,9 +166,9 @@
 # Define how to build the library archives.  (These are not used in any
 # standard configuration.)
 
-AR=ar
+AR=arm-linux-ar
 ARFLAGS=qc
-RANLIB=ranlib
+RANLIB=arm-linux-ranlib
 
 # Define the configuration ID.  Read gs.mak carefully before changing this.
 
@@ -178,7 +178,7 @@
 
 # Define the name of the C compiler.
 
-CC=gcc
+CC=arm-linux-gcc
 
 # Define the name of the linker for the final link step.
 # Normally this is the same as the C compiler.
@@ -275,8 +275,8 @@
 # Choose the language feature(s) to include.  See gs.mak for details.
 
 #FEATURE_DEVS=psl3.dev pdf.dev dpsnext.dev pipe.dev rasterop.dev
-FEATURE_DEVS=psl3.dev pdf.dev dpsnext.dev pipe.dev
-
+FEATURE_DEVS=psl3.dev 
+#pdf.dev dpsnext.dev pipe.dev 
 # Choose whether to compile the .ps initialization files into the executable.
 # See gs.mak for details.
 
@@ -301,7 +301,8 @@
 # Choose the device(s) to include.  See devs.mak for details,
 # devs.mak and contrib.mak for the list of available devices.
 
-DEVICE_DEVS=x11.dev x11alpha.dev x11cmyk.dev x11gray2.dev x11gray4.dev 
x11mono.dev
+DEVICE_DEVS=
+#x11.dev x11alpha.dev x11cmyk.dev x11gray2.dev x11gray4.dev x11mono.dev
 #DEVICE_DEVS1=bmpmono.dev bmpamono.dev posync.dev
 DEVICE_DEVS1=
 DEVICE_DEVS2=
@@ -309,16 +310,23 @@
 DEVICE_DEVS4=cdeskjet.dev cdjcolor.dev cdjmono.dev cdj550.dev pj.dev pjxl.dev 
pjxl300.dev
 DEVICE_DEVS5=uniprint.dev
 DEVICE_DEVS6=bj10e.dev bj200.dev bjc600.dev bjc800.dev
-DEVICE_DEVS7=faxg3.dev faxg32d.dev faxg4.dev
-DEVICE_DEVS8=pcxmono.dev pcxgray.dev pcx16.dev pcx256.dev pcx24b.dev 
pcxcmyk.dev
-DEVICE_DEVS9=pbm.dev pbmraw.dev pgm.dev pgmraw.dev pgnm.dev pgnmraw.dev 
pnm.dev pnmraw.dev ppm.dev ppmraw.dev pkm.dev pkmraw.dev
-DEVICE_DEVS10=tiffcrle.dev tiffg3.dev tiffg32d.dev tiffg4.dev tifflzw.dev 
tiffpack.dev
-DEVICE_DEVS11=tiff12nc.dev tiff24nc.dev
+DEVICE_DEVS7=
+#faxg3.dev faxg32d.dev faxg4.dev
+DEVICE_DEVS8=
+#pcxmono.dev pcxgray.dev pcx16.dev pcx256.dev pcx24b.dev pcxcmyk.dev
+DEVICE_DEVS9=
+#pbm.dev pbmraw.dev pgm.dev pgmraw.dev pgnm.dev pgnmraw.dev pnm.dev pnmraw.dev 
ppm.dev ppmraw.dev pkm.dev pkmraw.dev
+DEVICE_DEVS10=
+#tiffcrle.dev tiffg3.dev tiffg32d.dev tiffg4.dev tifflzw.dev tiffpack.dev
+DEVICE_DEVS11=
+#tiff12nc.dev tiff24nc.dev
 DEVICE_DEVS12=psmono.dev psgray.dev psrgb.dev bit.dev bitrgb.dev bitcmyk.dev
-DEVICE_DEVS13=pngmono.dev pnggray.dev png16.dev png256.dev png16m.dev
-DEVICE_DEVS14=jpeg.dev jpeggray.dev
-DEVICE_DEVS15=pdfwrite.dev pswrite.dev epswrite.dev pxlmono.dev pxlcolor.dev
-
+DEVICE_DEVS13=
+#pngmono.dev pnggray.dev png16.dev png256.dev png16m.dev
+DEVICE_DEVS14=
+#jpeg.dev jpeggray.dev
+DEVICE_DEVS15=pswrite.dev epswrite.dev pxlmono.dev pxlcolor.dev
+#pdfwrite.dev 
 # ---------------------------- End of options --------------------------- #
 
 # Define the name of the partial makefile that specifies options --
@@ -336,7 +344,7 @@
 
 CCFLAGS=$(GENOPT) $(CFLAGS)
 CC_=$(CC) `cat $(AK)` $(CCFLAGS)
-CCAUX=$(CC)
+CCAUX=gcc
 #We can't use -fomit-frame-pointer with -pg....
 #CC_LEAF=$(CC_)
 CC_LEAF=$(CC_) -fomit-frame-pointer
diff -ruN gs5.50/unixtail.mak downloads/gs5.50/unixtail.mak
--- gs5.50/unixtail.mak Mon Feb 14 07:59:08 2000
+++ downloads/gs5.50/unixtail.mak       Tue Jun 26 18:04:03 2001
@@ -86,7 +86,7 @@
 # On the RS/6000 (at least), compiling genarch.c with gcc with -O
 # produces a buggy executable.
 $(GENARCH_XE): $(GLSRC)genarch.c $(AK) $(stdpre_h)
-       $(CCAUX) $(O_)$(GENARCH_XE) $(GLSRC)genarch.c
+#      $(CCAUX) $(O_)$(GENARCH_XE) $(GLSRC)genarch.c
 
 $(GENCONF_XE): $(GLSRC)genconf.c $(AK) $(stdpre_h)
        $(CCAUX) $(O_)$(GENCONF_XE) $(GLSRC)genconf.c
@@ -154,3 +154,6 @@
        DEVICE_DEVS9= DEVICE_DEVS10= DEVICE_DEVS11= DEVICE_DEVS12= \
        DEVICE_DEVS13= DEVICE_DEVS14= DEVICE_DEVS15= \
        $(SH) <$(ldt_tr)
+
+
+


************************************************************************

------------------------------------------------------------------------
Environment variables

        GS_DEVICE I am not using this variable

        GS_FONTPATH /etc/fonts/

        GS_LIB /etc/gsinitfiles

        GS_OPTIONS nothing

------------------------------------------------------------------------
Command line:

gs -q -dSAFER -dNOPAUSE -dBATCH -r300 -sDEVICE=ljet4 -I/etc/fonts/ \ 
        -sOutputFile=outputdia -c -f locks.ps

------------------------------------------------------------------------
URL or FTP location of test files (include the data at the end of this
form if short):


------------------------------------------------------------------------
Suggested fix (if any):

NO IDEA :((







------------------------------------------------------------------------
Other comments:

I am using Linux Kernel Version 2.4.2 with arm patches.

I will be extremely deligted if I get an early reply.
I have removed all the X libraries in GS as i dont want to
use it in X.


Thanking in advance

Nikunj A. Dadhania

PS I am not subscribed to the mailing list so please reply personally :)
















reply via email to

[Prev in Thread] Current Thread [Next in Thread]