bashford@SCRIPPS.EDU (Don Bashford) (05/03/90)
I believe there are some compiler incompatibility problems with gcc compiling the Xsun server and rgb on the Sparcstation. I have a Sparcstation 1 running Sun OS 4.0.3 and am trying to compile X11R4 patchlevel 11 with "HasGcc YES" in config/sun.cf. I have installed gcc version 1.37.1 and run the fixincludes script. During the "make World" rgb crashes with a memory fault error. If I set CC=cc in the Makefile in the rgb source directory and make all in this directory the compile and run of rgb succeeds. Upon installation, the gcc compiled Xsun server crashes but if I replace it with my old cc compiled Xsun (X11R4 no patches) everything seems to work. I think the problem is caused by an incompatibility between the way cc and gcc pass structures as function arguments and/or return values. This problem is mentioned by Stallman at the end of the "Incompatibilities" section of the gcc manual. Rgb and the X server both link the dbm libraries which use structures as arguments and return values. As far as I can tell rgb and the server are the only programs in the core distribution that do use dbm, but I wonder if there are other places in the dist where this gcc-cc problem could come up. I suppose the fix is to either use a gcc-compiled dbm (where can I get source?) or to use cc rather than gcc in certain key parts of the compilation. I am not knowledgible enough in X or imake to implement the latter fix myself. Comments from xperts invited. Am I right? Has anyone seen this before? --------------------------------------------------- Donald Bashford Research Institute of Scripps Clinic, La Jolla, CA 619-554-9612