Difference between revisions of "Xorg7/MesaLib"

From CBLFS
Jump to navigationJump to search
(64Bit: Mesa Demos)
 
(15 intermediate revisions by 3 users not shown)
Line 17: Line 17:
 
* MesaGLUT - provides a working libglut.
 
* MesaGLUT - provides a working libglut.
  
If you're not interested in running the demos, you'll only need the first package.  However, there are a few other packages that can use a GLUT library (such as [[LibTIFF]]), so you may wish to install MesaGLUT as well. If you choose to install the demos, extract all three tarballs from the same toplevel directory. All three will extract to the Mesa-{{Mesa-Version}} directory.
+
You'll often only need the first package.  However, there are a few packages that can use a GLUT library (such as [[LibTIFF]]), so you may wish to install MesaGLUT as well. If you choose to install MesaGLUT, extract all two tarballs from the same toplevel directory. All two will extract to the Mesa-{{Mesa-Version}} directory.
  
 
<b>Homepage:</b> http://www.mesa3d.org/
 
<b>Homepage:</b> http://www.mesa3d.org/
Line 28: Line 28:
 
* Xorg [[Xorg7/Utilities|Utilities]]
 
* Xorg [[Xorg7/Utilities|Utilities]]
 
* [[Xorg7/libdrm|libdrm]]
 
* [[Xorg7/libdrm|libdrm]]
 +
* [[talloc]]
  
 
=== Optional ===
 
=== Optional ===
Line 33: Line 34:
 
* [[XCB]]
 
* [[XCB]]
  
{{Note|Don't remove the source after building Mesa.  It is needed by the [[Xorg7/Xserver]] build. You need to pass the path to the MesaLib source when building xorg-server, so take note of it.}}
+
== Configuration Information ==
 +
 
 +
{|
 +
|-
 +
|''--enable-xcb:'' enables the use of the optional dependency XCB.
 +
|}
  
 
== Non-Multilib ==
 
== Non-Multilib ==
  
Create a basic configuration for your system.  There are many more than linux-dri; execute make to see the list.  Each is a file in the configs directory if you wish to research the differences.  Replace linux-dri with the basic configuration you have selected:
+
Configure the package:
 
 
ln -sf linux-dri configs/current
 
 
 
Regardless of the basic configuration you chose, add the following:
 
 
 
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
 
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
 
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
 
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib/xorg/modules/dri" >> configs/current &&
 
echo "INSTALL_DIR = /usr" >> configs/current &&
 
echo "LIB_DIR = lib" >> configs/current &&
 
echo "DRI_DIRS += swrast" >> configs/current
 
 
 
If you have [[XCB]] installed you also need to add the following to the config:
 
  
  echo 'DEFINES += -DUSE_XCB' >> configs/current &&
+
  ./configure $XORG_CONFIG
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
 
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
 
  
 
Compile the package:
 
Compile the package:
  
  make default
+
  make  
  
 
Install the package:
 
Install the package:
Line 65: Line 55:
 
  make install
 
  make install
  
If you would like to build and install glxinfo and glxgears execute the following command:
+
== Multilib == ""NEEDS UPDATING""
 
 
make -C progs/xdemos glxinfo glxgears &&
 
install -m755 -v progs/xdemos/{glxinfo,glxgears} /usr/bin
 
 
 
== Multilib ==
 
  
 
=== 32Bit ===
 
=== 32Bit ===
Line 78: Line 63:
 
  mv Mesa-{{Mesa-Version}}{,-32} &&
 
  mv Mesa-{{Mesa-Version}}{,-32} &&
 
  cd Mesa-{{Mesa-Version}}-32
 
  cd Mesa-{{Mesa-Version}}-32
 
Create a basic configuration for your system.  There are many more than linux-dri; execute make to see the list.  Each is a file in the configs directory if you wish to research the differences.  Replace linux-dri with the basic configuration you have selected:
 
 
ln -sf linux-dri configs/current
 
 
Regardless of the basic configuration you chose, add the following:
 
 
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
 
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
 
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
 
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib/xorg/modules/dri" >> configs/current &&
 
echo "INSTALL_DIR = /usr" >> configs/current &&
 
echo "LIB_DIR = lib" >> configs/current &&
 
echo "DRI_DIRS += swrast" >> configs/current
 
 
If you have [[XCB]] installed you also need to add the following to the config:
 
 
echo 'DEFINES += -DUSE_XCB' >> configs/current &&
 
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
 
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
 
  
 
Compile the package:
 
Compile the package:
  
 
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
 
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
  make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" default
+
    ./configure $XORG_CONFIG32 --enable-32-bit && \
 
+
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
 +
    make CC="gcc ${BUILD32} -I$XORG_PREFIX/include" \
 +
    CXX="g++ ${BUILD32} -I$XORG_PREFIX/include"
 +
 
Install the package:
 
Install the package:
  
Line 114: Line 82:
 
  mv Mesa-{{Mesa-Version}}{,-n32} &&
 
  mv Mesa-{{Mesa-Version}}{,-n32} &&
 
  cd Mesa-{{Mesa-Version}}-n32
 
  cd Mesa-{{Mesa-Version}}-n32
 
Create a basic configuration for your system.  There are many more than linux-dri; execute make to see the list.  Each is a file in the configs directory if you wish to research the differences.  Replace linux-dri with the basic configuration you have selected:
 
 
ln -sf linux-dri configs/current
 
 
Regardless of the basic configuration you chose, add the following:
 
 
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
 
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
 
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
 
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib32/xorg/modules/dri" >> configs/current &&
 
echo "INSTALL_DIR = /usr" >> configs/current &&
 
echo "LIB_DIR = lib32" >> configs/current &&
 
echo "DRI_DIRS += swrast" >> configs/current
 
 
If you have [[XCB]] installed you also need to add the following to the config:
 
 
echo 'DEFINES += -DUSE_XCB' >> configs/current &&
 
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
 
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
 
  
 
Compile the package:
 
Compile the package:
  
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
+
  PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" \
  make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" default
+
    ./configure $XORG_CONFIGN32 --enable-32-bit && \
 
+
  PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" \
 +
    make CC="gcc ${BUILDN32} -I$XORG_PREFIX/include" \
 +
    CXX="g++ ${BUILDN32} -I$XORG_PREFIX/include"
 +
 
Install the package:
 
Install the package:
  
Line 150: Line 101:
 
  mv Mesa-{{Mesa-Version}}{,-64} &&
 
  mv Mesa-{{Mesa-Version}}{,-64} &&
 
  cd Mesa-{{Mesa-Version}}-64
 
  cd Mesa-{{Mesa-Version}}-64
 
Create a basic configuration for your system.  There are many more than linux-dri; execute make to see the list.  Each is a file in the configs directory if you wish to research the differences.  Replace linux-dri with the basic configuration you have selected:
 
 
ln -sf linux-dri configs/current
 
 
Regardless of the basic configuration you chose, add the following:
 
 
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
 
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
 
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
 
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib64/xorg/modules/dri" >> configs/current &&
 
echo "INSTALL_DIR = /usr" >> configs/current &&
 
echo "LIB_DIR = lib64" >> configs/current &&
 
echo "DRI_DIRS += swrast" >> configs/current
 
 
If you have [[XCB]] installed you also need to add the following to the config:
 
 
echo 'DEFINES += -DUSE_XCB' >> configs/current &&
 
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
 
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
 
  
 
Compile the package:
 
Compile the package:
  
 
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
  make CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" default
+
    ./configure $XORG_CONFIG64 --enable-64-bit && \
 +
  PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 +
    make CC="gcc ${BUILD64} -I$XORG_PREFIX/include" \
 +
    CXX="g++ ${BUILD64} -I$XORG_PREFIX/include"
  
 
Install the package:
 
Install the package:
  
 
  make install
 
  make install
 +
 +
== For older Mesa Packages only ==
 +
The Mesa Demos are in an own package now - needs to be configured and made seperately
  
 
If you would like to build and install glxinfo and glxgears execute the following command:
 
If you would like to build and install glxinfo and glxgears execute the following command:

Latest revision as of 14:42, 10 January 2012

Download Source:
ftp://ftp.freedesktop.org/pub/mesa/7.9/MesaLib-7.9.tar.gz
ftp://ftp.freedesktop.org/pub/mesa/7.9/MesaGLUT-7.9.tar.bz2

Back to libdrm

Introduction to Mesa

Mesa is an OpenGL compatible 3D library. Three packages are available.

  • MesaLib - the main Mesa library source code, drivers and documentation.
  • MesaGLUT - provides a working libglut.

You'll often only need the first package. However, there are a few packages that can use a GLUT library (such as LibTIFF), so you may wish to install MesaGLUT as well. If you choose to install MesaGLUT, extract all two tarballs from the same toplevel directory. All two will extract to the Mesa-7.9 directory.

Homepage: http://www.mesa3d.org/

Dependencies

Required

Optional

Configuration Information

--enable-xcb: enables the use of the optional dependency XCB.

Non-Multilib

Configure the package:

./configure $XORG_CONFIG

Compile the package:

make 

Install the package:

make install

== Multilib == ""NEEDS UPDATING""

32Bit

The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build.

mv Mesa-7.9{,-32} &&
cd Mesa-7.9-32

Compile the package:

PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
    ./configure $XORG_CONFIG32 --enable-32-bit && \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
    make CC="gcc ${BUILD32} -I$XORG_PREFIX/include" \
    CXX="g++ ${BUILD32} -I$XORG_PREFIX/include"

Install the package:

make install

N32

The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build.

mv Mesa-7.9{,-n32} &&
cd Mesa-7.9-n32

Compile the package:

PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" \
    ./configure $XORG_CONFIGN32 --enable-32-bit && \
PKG_CONFIG_PATH="${PKG_CONFIG_PATHN32}" \
    make CC="gcc ${BUILDN32} -I$XORG_PREFIX/include" \
    CXX="g++ ${BUILDN32} -I$XORG_PREFIX/include"

Install the package:

make install

64Bit

The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build.

mv Mesa-7.9{,-64} &&
cd Mesa-7.9-64

Compile the package:

PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
    ./configure $XORG_CONFIG64 --enable-64-bit && \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
    make CC="gcc ${BUILD64} -I$XORG_PREFIX/include" \
    CXX="g++ ${BUILD64} -I$XORG_PREFIX/include"

Install the package:

make install

For older Mesa Packages only

The Mesa Demos are in an own package now - needs to be configured and made seperately

If you would like to build and install glxinfo and glxgears execute the following command:

PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
make CC="gcc ${BUILD64}" -C progs/xdemos glxinfo glxgears &&
install -m755 -v progs/xdemos/{glxinfo,glxgears} /usr/bin

Forward to xbitmaps

Contents

Installed Directories: /usr/include/GLES
Installed Programs: None
Installed Libraries: libGL.so, libGLU.so, libGLw.so, libOSMesa.so, libglut.so

Short Description