[comp.windows.x] Help compiling X11R4 on Sun 3/60 mono.

ernie@calvin.EDU (Ernest D. Brouwer) (06/16/91)

I just sent in the subscription request so please respond directly to me as I
am not sure when I will be getting regular mailings.

I have a Sun 3/60 with a monochrome monitor running SunOs 4.0.3 and I want to
run X11R4 on it.  I put gcc on it too for the mentioned performance benefits.
All seems well except:

1) When it gets down to compiling sunInit.c (and others) in ddx/sun it 
   complains as follows:
   "/usr/include/sundev/vuid_event.h:42: unterminated character constant
    *** Error code 1"

   I checked this .h file out and see that line 42 is in the middle of an
   #ifdef COMMENT ... #endif block.  Confused, I made a backup copy of that
   file, cut that block out and did another make World.  That seemed to satisfy
   gcc or whoever generated the error.

2) everytime make tried to use mit/fonts/mkfontdir/mkfontdir in each of
   mit/fonts/bdf/misc, 75dpi, and 100dpi; I got:
   "ld.so: libXmu.so.4: not found
    *** Error code 127"

   I did a setenv LD_LIBRARY_PATH to the dir that I found the libXmu.so.4.0 in
   (I think it was mit/lib/Xmu), did an ldconfig (just in case) and then did
   the mkfontdir's manually following the examples in the make.world file.
   This seemed to work ok.  Then I did a make install DESTDIR=/home/Xdirs and
   that too looked fine.  I got a 'complete' canned implementation of X in
   /home/Xdirs.

3) After linking /home/Xdirs/usr/* to their normal places, I did an xinit and
   got this:


Getting interface configuration: Operation not supported on socket
sunOpenFrameBuffer: Inappropriate ioctl for device
sunOpenFrameBuffer: Inappropriate ioctl for device
sunOpenFrameBuffer: Inappropriate ioctl for device
sunOpenFrameBuffer: Inappropriate ioctl for device
sunOpenFrameBuffer: Inappropriate ioctl for device

Fatal server bug!
no screens found
XIO:  fatal IO error 32 (Broken pipe) on X server "(null)"
      after 0 requests (0 known processed) with 0 events remaining.
      The connection was probably broken by a server shutdown or KillClient.


   I checked the permissions on /dev/bwtwo0 and they are 666 so that should be
   fine (right?).  I even tried xinit -- -dev /dev/bwtwo0 and got the same
   message with four less "sunOpenFrameBuffer: Inappropriate ioctl for device"
   messages.

   Can anyone see what I am doing wrong?  Do you think my mucking around with
   1) and 2) above pose any problems?

Any help is appreciated.
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| Ernest D. Brouwer               Internet: ernie@calvin.edu            |
| Unix Systems Administrator          uucp: uunet!Calvin.EDU!ernie      |
| Calvin College & Seminary          phone: (616) 957-8548              |
|                                      fax: (616) 957-8551              |
|                                   USnail: 3201 Burton SE.             |
|                                           Grand Rapids, MI 49546-4388 |
| "Yes I'm on a Sun, and Yes, I do 8MHz NeXT voicemail" (try it :-)     |
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

mouse@lightning.mcrcim.mcgill.EDU (der Mouse) (06/17/91)

> I have a Sun 3/60 with a monochrome monitor running SunOs 4.0.3 and I
> want to run X11R4 on it.  I put gcc on it too for the mentioned
> performance benefits.  All seems well except:

> 1) When it gets down to compiling sunInit.c (and others) in ddx/sun
>    it complains as follows:
>    "/usr/include/sundev/vuid_event.h:42: unterminated character constant
>     *** Error code 1"

>    I checked this .h file out and see that line 42 is in the middle
>    of an #ifdef COMMENT ... #endif block.

Yes; it's a line with an odd number of single quotes on it, due to a
"doesn't".  This is a violation of the ANSI rules; text that's
suppressed due to preprocessor #if-type controls must be valid
preprocessor tokens, and unterminated character constants don't cut it.

The 4.1 version of this file has turned the #ifdef COMMENT stuff into a
real comment, which is the right way to do it.

You can simply do the same, or you can build a version of
sundev/vuid_event.h and put it in your gcc-include directory, alongside
all the include files that fixincludes patched up.  (Or more likely,
from what you say below, didn't patch up.)

> 2) everytime make tried to use mit/fonts/mkfontdir/mkfontdir in each
>    of mit/fonts/bdf/misc, 75dpi, and 100dpi; I got:
>    "ld.so: libXmu.so.4: not found
>     *** Error code 127"

I seem to recall what's wrong here, but can't recall the fix offhand.
Something about relative library paths and ld's search rules.  Since
you got it to work I won't worry about it further.

> 3) After linking /home/Xdirs/usr/* to their normal places, I did an
>    xinit and got this:

> Getting interface configuration: Operation not supported on socket
> sunOpenFrameBuffer: Inappropriate ioctl for device

This looks like the gcc fixincludes problem.  From the FAQ....

----------------------------------------------------------------------
Subject:  85)  What are these I/O errors running X built with gcc?
When I try to run xinit or the Xsun server I get the error 
	"Getting interface configuration: Operation not supported on socket. 
	Fatal server bug! no screens found."

	Running the gcc fixincludes script apparently didn't work. You can do 
this simple test:

	#include <sys/ioctl.h>
	SIOCGIFCONF

Run that through cc -E and gcc -E.  The last line of output is the piece of 
interest; it should be identical (modulo irrelevant differences like 
whitespace).  If the gcc version has 'x' where the cc version has 'i', your 
fixincludes run didn't work for some reason or other; go back to your gcc
sources and run `fixincludes`; then rebuild the X distribution. If they are 
identical, try running a make clean in mit/server and rebuilding, just to make 
sure everything gets compiled with the proper include files.  

[courtesy der Mouse, mouse@LARRY.MCRCIM.MCGILL.EDU; 9/90]

----------------------------------------------------------------------

					der Mouse

			old: mcgill-vision!mouse
			new: mouse@larry.mcrcim.mcgill.edu