mouse@shamash.mcrcim.mcgill.EDU (der Mouse) (06/27/90)
> sliu@el-shaddai:/usr/bin/X11>xinit > Getting interface configuration: Operation not supported on socket > sunOpenFrameBuffer: FBIOGTYPE: Inappropriate ioctl for device > sunOpenFrameBuffer: FBIOGTYPE: Inappropriate ioctl for device > sunOpenFrameBuffer: FBIOGTYPE: Inappropriate ioctl for device > sunOpenFrameBuffer: FBIOGTYPE: Inappropriate ioctl for device > sunOpenFrameBuffer: FBIOGTYPE: Inappropriate ioctl for device In short, every ioctl failed. You don't mention the crucial thing: you used gcc to build your server. (I've seen this before.) The problem is that gcc is miscompiling your ioctls. This indicates a corrupted or missing gcc include file. Most likely your gcc installer didn't run fixincludes or ran it incorrectly. (It's also possible it got trashed afterwards, but to me that seems to be less likely.) For all of you out there who think this might be your problem, here's something to try. Create a file containing just the word "SIOCGIFCONF", alone on a line. Run this through cc -E and gcc -E and compare the outputs (ignore whitespace differences). If the gcc output has a 'x' where the cc output has some other letter in quotes, your gcc has this problem. The basic problem is that <sys/ioctl.h> (or wherever ioctls are defined on your machine) uses the Reiser cpp's feature/misfeature of substituting macro formal parameters within quoted literals. K&R V1 is not as clear as it might be on this point; ANSI clearly disallows it. gcc of course follows the ANSI spec on this point. The fixincludes script generates a version of this file that does things the ANSI way. der Mouse old: mcgill-vision!mouse new: mouse@larry.mcrcim.mcgill.edu