Building mesa with dri for fbcon
From Organic Design wiki
Contents
You will need
Sources:
- libdrm-2.2
- MesaLib-6.5.2
- Kernel-2.6.16.18
Process
The process requires both kernel space and user space software. You will need the kernel, the DRM/DRI and mesa source trees.
libdrm
These are the user space libs. Here is an example configure script to set some options for sandbox style compilation - where we don't want to install binaries on the host system. This is because we eventually want to cross compile for a target system.
I obtained the DRM source with git.
cd mkdir drm cd drm git clone git://anongit.freedesktop.org/git/mesa/drm export ROOT=/home/rob/framebuffer/install cd drm ./configure \ --prefix=$ROOT/usr \ --exec-prefix=$ROOT/usr \ --bindir=$ROOT/usr/bin \ --sbindir=$ROOT/usr/sbin \ --libexecdir=$ROOT/usr/lib \ --sysconfdir=$ROOT/etc \ --datadir=$ROOT/usr/share \ --localstatedir=$ROOT/var \ --mandir=$ROOT/usr/man \ --infodir=$ROOT/usr/info make install
This create some files in /home/rob/framebuffer/install/usr/lib, and others.
Mesa
cd mkdir mesa cd mesa cvs -d:pserver:anonymous@anoncvs.freedesktop.org:/cvs/mesa co Mesa cd mkdir kernel cd kernel wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.18.tar.bz2 tar xjf linux-2.6.16.18.tar.bz2 cd ~/drm/drm/linux-core make LINUXDIR=~/kernel/linux-2.6.18/
All going well you will end up with a bunch of .o files in your ~/drm/drm/linux-core directory.
Now you need to build mesa linking against these .o files.
cd ~/mesa/Mesa-6.5.2 make realclean sed -ri 's|DRM_SOURCE_PATH.+$|DRM_SOURCE_PATH = $(TOP)/../../drm/drm|' configs/default
We need to edit the config to point to the DRM modules. And make it.
make linux-solo