4 Notes for building XFree86 on Solaris x86

Contents of this section

  1. The majority of all modifications you will need to make are now in ~xc/config/cf/xf86site.def, except one. You will need to set OSName, and OSMinorVersion correctly in ~xc/config/cf/sun.cf. Under Solaris 2.1 for x86, sun.cf needs to read (near the top of the file)
            #ifdef SVR4Architecture
            #ifdef i386Architecture
            #define OSName                  SunOS 5.1 x86
            XCOMM operating system:  OSName
            #define OSMajorVersion          5
            #define OSMinorVersion          1
    
    Under Solaris 2.4 for x86, sun.cf needs to read (near the top of the file)
            #ifdef SVR4Architecture
            #ifdef i386Architecture
            #define OSName                  SunOS 5.4 x86
            XCOMM operating system:  OSName
            #define OSMajorVersion          5
            #define OSMinorVersion          4
    
  2. Both Gcc, and ProWorks are supported by XFree86. Gcc-2.5.8 or gcc-2.7.2 are suggested, Gcc-2.6.0 is known not to work. You also need to set HasGcc2 correctly in ~xc/config/cf/xf86site.def. You should also make certain your version of GCC predefines `sun'. 2.4.5 is known NOT to by default. If needed edit /usr/local/lib/gcc-lib/*/*/specs, and modify the *predefines: line.

    Note: A Threaded Xlib compiled with GCC has subtle problems. It'll work 98% of the time, however clients will occasionally exhibit strange hangs. Most notably image viewers such as xv-3.10 exhibit this problem.

    It is recommended that you set ThreadedX in ~xc/config/cf/sun.cf to NO, if you are using GCC. ProWorks does not have this problem.

  3. If you are using ProWorks to compile the XFree86 distribution, you need to modify your PATH appropriately so the ProWorks tools are available.
  4. You MUST put /usr/ccs/bin at the front of your PATH. There are known problems with some GNU replacements for the utilities found there. So the /usr/ccs/bin versions of these programs must be found before any other possible GNU versions. (Most notably GNU 'ar' does not work during the build).
  5. If you wish to use the "memory aperture" feature of the S3, and Mach32 servers, you need to compile, and install the Solaris x86 aperture driver for memory mapped I/O support. This driver is REQUIRED for the I128, P9000 and Mach 64 servers.

    The source for this driver is included in ~xc/programs/Xserver/hw/xfree86/etc/apSolx86.shar. Building, and installing the driver is relatively straight forward. Please read its accompanying README file.

    You also need to set HasSolx86apertureDrv to YES in ~xc/config/cf/xf86site.def.

Next Chapter, Previous Chapter

Table of contents of this chapter, General table of contents

Top of the document, Beginning of this Chapter