三九宝宝网宝宝百科宝宝知识

怎样生成最小的DirectFB

11月22日 编辑 39baobao.com

[Excle函数中的最大值和最小值如何用]2填入一些数据作为事例。3选中一个放最大值的单元格。4找到顶部菜单栏中的公式-》自动求和-》最大值。5选择之后,系统会自动帮我们选择要计算的范围,你也可以自己选择你想...+阅读

本文介绍了怎样生成一个最小(或接近最小)的DirectFB,以及相关的测试用例的安装和测试,对编译中的参数MMX,SSE,SDL,VNC的概念给出了较为详细的介绍

实验平台:

FC5(Fedora Core5)

DirectFB-0.9.24(目前最新版本为0.9.25,为了开发的稳定性,选择0.9.24版本)

下载源码:

下载DirectFB-0.9.24.tar.gz源码开发包,下载地址为:: .directfb./index.php?path=Main%2FDownloadsmake

$make install

修改/etc/ld.so.conf文件,加入你所安装的DirectFB库文件的位置,此例为

/usr/ miniDirectFB/lib;

$vi /etc/ld.so.conf

添加usr/ miniDirectFB/lib

保存退出

$ldconfig

Ldconfig命令使得你刚加入的参数起作用,详细可以参考相关资料。

安装测试用例

假设DirectFB-examples-0.9.23.tar.gz下载到本地机器的位置为home目录,解压并进入该包

$tar xvf DirectFB-examples-0.9.23.tar.gz

$cd DirectFB-examples-0.9.23

设置pkgconfig的目录(参考你的DirectFB安装目录)

$export PKG_CONFIG_PATH=/usr/miniDirectFB/lib/pkgconfig

编译安装测试用例:

$./configure –prefix=/usr/miniExample

$make clean;make

$make install

安装完毕

测试

切换到一个终端下,设置相应的环境变量:

$export LD_LIBRARY_PATH=/usr/miniDirectFB/lib

运行测试用例

$df_bltload

$df_cpuload

$df_dioload

注意,这里运行的每一个例子,你都无法通过鼠标键盘正常退出,因为,我们生成的是一个最小(或者接近最小)的DirectFB,在configure中我们去掉了对输入设备的支持;当然,其它的例子我们基本上都不能运行,因为他们都需要输入或者gfxdrivers的支持,我们也去掉了,不过,看起来很简洁,可以更方便我们对DirectFB的认识。安装的测试用例可以在你安装的目录里找到,本例中为:

/usr/miniExample/bin

编译完成后,configure的输出结果

Build options:

Version 0.9.24

Install prefix /usr/miniDirectFB

Build shared libs yes

Build static libs no

Module directory ${exec_prefix}/lib/directfb-0.9.24

CPPFLAGS -D_REENTRANT

CFLAGS -Wall -O3 -ffast-math -pipe -D_GNU_SOURCE -Werror-implicit-function-declaration

LDFLAGS

LIBS -ldl -lpthread Misc options:

Multi Application Core no

Voodoo (work support) no

Debug mode no

Trace support no

MMX support no

SSE support no

zlib pression no

sysfs support no

Building Core Systems:

Linux FBDev support yes

X11 support no

OSX support no

SDL support no

VNC support no

Building WM Modules:

Default

yes

UniQuE no

Building Tools no

Building Image Providers:

GIF no

JPEG no

MPEG2 I-Frame yes

PNG no

Building Video Providers:

Video4Linux no (v2: no)

Building Font implementations:

FreeType2

Default font yes

Building Graphics Drivers:

3Dfx Voodoo no

ATI Mach64 no

ATI Radeon no

ATI Rage 128 no

ATI R200 no

Intel i810 no

Intel i830 no

Matrox no

NeoMagic no

NSC Geode no

nVidia

no

S3 Sage no

SiS 315 no

TVIA CyberPro no

VIA CLE266 no

VIA UniChrome no

Building Input Drivers:

DBox2 Remote no

DreamBox Remote no

ELO Touchscreen no

H3600 Touchscreen no

Joystick no

Keyboard no

Linux Input no

LiRC no

MuTouch touchscreen no

PS/2 Mouse no

Serial Mouse no

SonyPI Jogdial no

ucb1x00 Touchscreen no

WM97xx Touchscreen no

附录2 安装后生成的共享库列表为

libdirect-0.9.so.24.0.0

libdirectfb-0.9.so.24.0.0

libfusion-0.9.so.24

libdirectfbwm_default.so

libdirectfb_fbdev.so

libidirectfbimageprovider_mpeg2.so

libidirectfbfont_default.so

libidirectfbvideoprovider_v4l.so

附录三 使用rpm命令参看DirectFB的依赖关系

rpm -qpR directfb-0.9.24-8.rhfc5.at.i386.rpm

warning: directfb-0.9.24-8.rhfc5.at.i386.rpm: Header V3 DSA signature: NOKEY, key ID 66534c2b

libSDL-1.2.so.0

libc.so.6

libc.so.6(GLIBC_2.0)

libc.so.6(GLIBC_2.1)

libc.so.6(GLIBC_2.1.3

)

libc.so.6(GLIBC_2.3)

libc.so.6(GLIBC_2.3.4)

libc.so.6(GLIBC_2.4)

libdirect-0.9.so.24

libdirectfb-0.9.so.24

libdl.so.2

libdl.so.2(GLIBC_2.1)

libfreetype.so.6

libfusion-0.9.so.24

libjpeg.so.62

libm.so.6

libpng12.so.0

libpthread.so.0

libpthread.so.0(GLIBC_2.0)

libpthread.so.0(GLIBC_2.1)

libpthread.so.0(GLIBC_2.3.2)

libz.so.1

rpmlib(pressedFileNames) l --enable-mmx=的含义参照如下的解释:

MMX(MultiMedia Extensions),多媒体扩展指令集。是在Intel微处理器和其它与x86兼容的微处理器中包含57个多媒体指令的一个集合。支持MMX的微处理器可以处理许多常见的多媒体操作,例如信号处理(DSP digital signal processing)就常用一个单独的声卡或显卡来处理。然而,只有调用MMX指令的软件——所谓的支持MMX的软件——才能发挥MMX指令集的优势。

MMX技术用于加快多媒体和通信应用的运行速度。该技术加入了新的指令和数据类型,使应用达到更高水平的性能。它充分利用了许多多媒体和通信算法中固有的并行计算能力,同时还完全兼容现有的操作系统和应用。英特尔开发的最早期SIMD指令集,可以增强浮点和多媒体运算的速度。

英文解释:Short for Multimedia Extensions, a set of 57 multimedia instructions built into Intel microprocessors and other x86-patible microprocessors. MMX-enabled microprocessors can handle many mon multimedia operations, such as digital signal processing (DSP), that are normally handled by a separate sound or video card. However, only software especially written to call MMX instructions -- so-called MMX-enabled software -- can take advantage of the MMX instruction set.

l --enable-sse=的含义参照如下的解释:

sse为PentiumIII级别以上的cpu启用SSE指令集优化支持;

Streaming SIMD Extensions(SSE)和Streaming SIMD Extensions 2(SSE2)指令集,它们对Intel (R) 4的处理器有效用;

Intel (R) Pentium 4处理器根据Intel (R) Burst TM 微架构(microarchitecture)。此架构从它的前一代(predecessors)提供新的强化,包括对SIMD(Single Instruction Multiple Data)执行技术的改善。SIMD在具MMX技术的Pentium处理器首次被介绍,在Pentium III处理器家族扩充成包含更多在Streaming SIMD Extensions (SSE)

的数据集,而今天Pentium 4处理器则以Streaming SIMD Extensions (SSE) 包含了更多(的资料集)。

为了Interl Burst微架构发展的主要特性是从Pentium III处理器的P6微架构找到的指令集的扩充,以引入在双精度浮点数数据元素上的运算。此架构以它平行处理更多运算的能力,支持更多的数据,且更有效率。

本文件的目标在于提供给不识此道者一堂SSE和SSE2的「速成课(crash course)」,让你能快速地到达能开始在你的应用程序中实作SSE程序代码的水平。

以下为关联文档:

澳洲留学那些失业率最小的专业每年去澳洲留学的人数都在不断上升,大家在申请学校和专业的时候一定是经过多方考量才作出决定的,那么,大学毕业后的就业率是否是大家参考的因素之一呢?今天,兆龙留学专家就为大...

突破传统最小化窗口演变为个性化窗口习惯了Windows各种操作界面的你,有没有兴趣尝鲜一下另类一点的窗口最小化功能呢?有的话,就让我们一起进入miniMIZE为我们精心打造的另类窗口最小化的世界吧!miniMIZE发布时间虽...

Digi推出业内最小Linux嵌入式设备服务器Digi International今天推出了带有Digi嵌入式Linux操作系统的Digi Connect ME 9210.Digi嵌入式Linux操作系统是基于Digi嵌入式模块和微控制器而开发的最新版的Linux操作系统...

在Windowsxp2003下实现最小巧的虚拟桌面xp也可以像Linux一样实现虚拟桌面,而且不需要安装任何程序 只要下载一个文件就可以了,它就是msvdm.dll(附件下载地址:: bbs.chinaitlab./thread-310855-1-1 ) 下载回来后把文件复...

推荐阅读
图文推荐