MesaLib-10.4.5
      
      
        
          Introduction to MesaLib
        
        
          Mesa is an OpenGL compatible 3D
          graphics library.
        
        
          This package is known to build and work properly using an LFS-7.7
          platform.
        
        
          Package Information
        
        
        
          Additional Downloads
        
        
        
          MesaLib Dependencies
        
        
          Required
        
        
          Xorg
          Libraries, libdrm-2.4.59, and Python-2.7.9
        
        
          Recommended
        
        
          elfutils-0.161 (required for Gallium3D
          radeonsi driver), libvdpau-0.9 (to build VDPAU drivers),
          LLVM-3.5.1 (required for Gallium3D r300 and
          radeonsi drivers and also for llvmpipe which is intended to be the
          fastest of the three sw rasterizers, see http://www.mesa3d.org/faq.html#part3
          )
        
        
          Optional
        
        
          mesa-demos
          (provides more than 300 extra demos to test MesaLib; this includes the same programs added
          by the patch above), and Wayland
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            The instructions below assume that elfutils and LLVM are installed. You will need to modify
            the instructions if you choose not to install them. Please note
            that elfutils and LLVM are required for Gallium3D r300 and
            radeonsi drivers. For an explanation of Gallium3D please see
            https://en.wikipedia.org/wiki/Gallium3D.
          
         
        
          User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/mesalib
        
       
      
        
          Installation of MesaLib
        
        
          ![[Note]](../images/note.png) 
          
            Note
          
          
            Unlike other packages, the MesaLib-10.4.5.tar.bz2 archive will extract to
            the Mesa-10.4.5 directory.
          
         
        
          If you have downloaded the xdemos patch (needed if testing the Xorg
          installation per BLFS instructions), apply it by running the
          following command:
        
        
patch -Np1 -i ../MesaLib-10.4.5-add_xdemos-1.patch
        
          Install MesaLib by running the
          following commands:
        
        
autoreconf -f -i &&
./configure CFLAGS='-O2' CXXFLAGS='-O2'    \
            --prefix=$XORG_PREFIX          \
            --sysconfdir=/etc              \
            --enable-texture-float         \
            --enable-gles1                 \
            --enable-gles2                 \
            --enable-osmesa                \
            --enable-xa                    \
            --enable-gbm                   \
            --enable-glx-tls               \
            --with-egl-platforms="drm,x11" \
            --with-gallium-drivers="nouveau,r300,r600,radeonsi,svga,swrast" &&
make
        
          If you have applied the xdemos patch, build the demo programs by
          running the following command:
        
        
make -C xdemos DEMOS_PREFIX=$XORG_PREFIX
        
          This package does not come with a test suite.
        
        
          Now, as the root user:
        
        
make install
        
          If you have built the demo programs, install them by running the
          following command as the root user:
        
        
make -C xdemos DEMOS_PREFIX=$XORG_PREFIX install
        
          If desired, install the optional documentation by running the
          following commands as the root
          user:
        
        
install -v -dm755 /usr/share/doc/MesaLib-10.4.5 &&
cp -rfv docs/* /usr/share/doc/MesaLib-10.4.5
       
      
        
          Command Explanations
        
        
          CFLAGS="-O2"
          CXXFLAGS="-O2": By default, Autoconf sets CFLAGS and CXXFLAGS to "-g -O2".
          That results in binaries and libraries being built with debugging
          symbols which make them bigger. Override the default flags to omit
          -g compiler flag so the final libraries are smaller.
        
        
          --enable-texture-float:
          This switch enables floating-point textures and render buffers.
          Please consult docs/patents.txt to
          see if there are any legal issues if you use this feature.
        
        
          --enable-gles1: This switch
          enables support for OpenGL ES 1.x API.
        
        
          --enable-gles2: This switch
          enables support for OpenGL ES 2.x API.
        
        
          --enable-osmesa: This
          switch enables building of the libOSMesa library.
        
        
          --enable-xa: This switch
          enables building of the XA X Acceleration API (Required for VMware
          3D Driver).
        
        
          --enable-gbm: This switch
          enables building of the Mesa
          Graphics Buffer Manager library.
        
        
          --enable-glx-tls: This
          switch enables TLS (Thread Local Storage) support in GLX.
        
        
          --with-egl-platforms="...":
          This parameter controls for which platforms EGL should be built.
          Available platforms are drm, x11 and wayland.
        
        
          --with-gallium-drivers="...": This
          parameter controls which Gallium3D drivers should be built.
          Available drivers are: i915, ilo, nouveau, r300, r600, radeonsi,
          svga and swrast. You will need to remove r300 and radeonsi from the
          list if you did not install elfutils and LLVM.
        
        
          --enable-r600-llvm-compiler: Use this
          switch to enable experimental R600 LLVM backend for graphics shaders which claims
          to speed up the driver.
        
        
          --enable-sysfs: Use this switch to
          enable simple PCI identification method, required for building DRI
          on systems without udev.
        
       
      
        
          Contents
        
        
          
            
              Installed Programs:
              glxgears and glxinfo
            
            
              Installed Libraries:
              libEGL.so, libgbm.so, libglapi.so,
              libGLESv1_CM.so, libGLESv2.so, libGL.so, libOSMesa.so,
              libxatracker.so, libXvMCnouveau.so, and libXvMCr600.so
            
            
              Installed Directories:
              $XORG_PREFIX/include/EGL,
              $XORG_PREFIX/include/GL, $XORG_PREFIX/include/GLES,
              $XORG_PREFIX/include/GLES2, $XORG_PREFIX/include/GLES3,
              $XORG_PREFIX/include/KHR, $XORG_PREFIX/lib/dri,
              $XORG_PREFIX/lib/vdpau, and /usr/share/doc/MesaLib-10.4.5
              (optional)
            
           
         
        
          
            Short Descriptions
          
          
            
            
              
                | 
                    glxgears
                   | 
                    is a GL demo useful for troubleshooting graphics
                    problems.
                   | 
              
                | 
                    glxinfo
                   | 
                    is a diagnostic program that displays information about
                    the graphics hardware and installed GL libraries.
                   | 
              
                | 
                    libEGL.so | 
                    provides a native platform graphics interface as defined
                    by the EGL-1.4 specification.
                   | 
              
                | 
                    libgbm.so | 
                    is the Mesa Graphics
                    Buffer Manager library.
                   | 
              
                | 
                    libGLESv1_CM.so | 
                    is the Mesa OpenGL ES
                    1.1 library.
                   | 
              
                | 
                    libGLES2.so | 
                    is the Mesa OpenGL ES
                    2.0 library.
                   | 
              
                | 
                    libGL.so | 
                    is the main Mesa OpenGL
                    library.
                   | 
              
                | 
                    libOSMesa.so | 
                    is the Mesa Off-screen
                    Rendering library.
                   | 
              
                | 
                    libxatracker.so | 
                    is the Xorg Gallium3D acceleration library.
                   | 
            
          
         
       
      
        Last updated on 2015-02-21 20:09:10 -0800