phoneME建立DirectFB

1、介绍
DirectFB是一开源图形硬件抽象库。DirectFB是一瘦软件层,可直接映射图形调用为硬件加速feature。然而,DirectFB还提供了背后的软件模拟。

本文描述了怎样建立phoneME Advanced使用的DirectFB。

除了core DirectFB库之外,还需要两个补充库:
1)Linux Fusion
是一个Linux内核模块,提供线程抽象,允许多种DirectFB应用程序并行运行。
2)Simple DirectMedia Layer(SDL)
是一可选的多媒体库,使得它更容易运行和调试基于DirectFB的应用程序。
SDL允许DirectFB应用程序出现在同一虚拟控制台,这样的话,应用程序运行时无需屏幕开关。另外,通过SDL运行DirectFB程序无需root权限。

2、建立和安装Linux Fusion
需要gcc/g++ 4.x编译器和Linux 2.6.x内核

1)下载linux-fusion-3.2.6.tar.gz,并解压
2)进入linux-fusion-3.2.6目录
3)建立Linux Fusion
make
4)安装Linux Fusion
make install
5)载入Linux Fusion设备模块
modprobe fusion
注:如果cvm提示未找到/dev/fusion0设备,再次运行modprobe fusion
6)改变/dev/fusion*设备模块的权限
chmod 666 /dev/fusion*

3、安装SDL
DirectFB开发需要SDL的runtime和开发库。
1)安装下列包
libsdl1.2debian
libsdl1.2debian-alsa
libsdl1.2-dev
2)添加下列选项到/etc/directfbrc:
system=sdl
force-windowed
mode=240*320
如果文件不存在,那么创建它。

4、建立和安装DirectFB
1)下载DirectFB-1.3.0.tar.gz,解压
2)进入DirectFB的目录
3)以下列选项运行configure:
./configure --disable-x11 --enable-vnc --disable-osx --enable-fbdev --enable-sdl --enable-multi --enable-freetype --disable-video4linux --without-tools --disable-voodoo --disable-sysfb --with-gfxdrivers=none --with-inputdrivers=keyboard,linuxinput
缺省情况,DirectFB将安装到/usr/local目录下。要改变目录,使用--prefix选项。
4)建立DirectFB
make
5)安装DirectFB
make install