Ubuntu下DirectFB的编译安装,样例程序编译及运行体验DirectFB和样例的源代码可以到DirectFB.org下载到目录/home/。整个步骤依次为:1、切换到目录/home/下,将两个包解压: tar -xzf DirectFB-1.3.0.tar.gz
tar -xzf DirectFB-examples-1.2.0.tar.gz2、安装DirectFB-1.3.0,依次输入下列命令cd DirectFB-1.3.0./configure 注:如果在./configure这步出现下面的提示: PNG support is missing - many applications won"t work correctly!
JPEG support is missing - many applications won"t work correctly!
FreeType2 support is missing - many applications won"t work correctly! 解决的方法可以参考:
输入命令
apt-cache search libpng
apt-cache search libjpeg
apt-cache search libfreetype
依次安装找到的文件。
例如: 查找关于png方面的包:apt-cache search libpng
安装查找的相关包 :apt-get install cl-png libglpng-dev libimage-size-ruby1.8 libpng3-dev等待。
makemake install3、安装DirectFB-examples-1.2.0a).vi /boot/grub/menu.lst在kernel后面加上vga=0x0317(分辨率1024*768)或者vga=788(分辨率800*600)把frambuffer启动,如:#****************start*************#
title Ubuntu, kernel 2.6.17-10-generic
root (hd0,6)
kernel /vmlinuz-2.6.17-10-generic root=/dev/sda8 ro quiet splash locale=zh_CN vga=0x0317
initrd /initrd.img-2.6.17-10-generic
quiet
savedefault
boot
#****************stop**************#b).updatedb #更新数据库c).locate directfb.pc 找到directfb.pc的路径,例如我的是这样的: /usr/lib/pkgconfig/directfb.pc
/usr/lib/pkgconfig/cairo-directfb.pc
/usr/local/lib/pkgconfig/directfb.pc
/data/soft/DirectFB-1.1.0/directfb.pc.in
/data/soft/DirectFB-1.1.0/directfb.pcd).接着设置环境,将第3步得到的pkgconfig库目录加入环境之中:export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
(这样只能在当前终端可以运行,关机后还得自已运行些命令,才能运行dfb程序,如要永久性加入可这样:
如你用的是root用户,可以vi /root/.profile中加入:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig )e).makef).make installg).将指定directfb的库目录:
vi /etc/ld.so.conf在最后一行加入:/usr/local/lib,保存退出。
ldconfig
h).重启计算机。 如果不重启,我的机子出现下面的错误:
(*) DirectFB/Core: Single Application Core. (2007-10-22 15:48)
(!) Direct/Util: opening "/dev/fb0" failed
--> No such device
(!) DirectFB/FBDev: Error opening framebuffer device!
(!) DirectFB/FBDev: Use "fbdev" option or set FRAMEBUFFER environment variable.
(!) DirectFB/Core: Could not initialize "system_core" core!
--> Initialization error!
df_andi.c <462>:
(#) DirectFBError [DirectFBCreate( &dfb )]: Initialization error!4、测试例子,cd DirectFB-examples-1.3.0/src/ 下,运行:./df_andi安装完成!另:如果想不让你的directfb应用程序不在全屏显示,不使用fbdev引擎而改成SDL时,可以创建并修改/etc/directfbrc文件,关于此文件,稍后再给出。
上面过程中可能出现framebuffer没有启动的问题,需要在ubuntu中配置以让其启动framebuffer支持,参考以下方法
7.10默认屏蔽了framebuffer模开,所以无法在gurb参数上加vga=xxx来启用frame buffer.
解决解决方法:
首先,编辑你的 /etc/initramfs-tools/modules 文件
加入如下三行内容
fbcon
vesafb
vga16fb最重要的一步,要把文件/etc/modprobe.d/blacklist-framebuffer里面的vesafb和vga16fb这两行给注释掉。
这样你就可以在内核后面加入vga=xxx这样的启动参数了。最好用hwinfo --framebuffer先看一下显卡支持的vga数值
sudo hwinfo --framebuffer
引用:
02: None 00.0: 11001 VESA Framebuffer
[Created at bios.447]
Unique ID: rdCR.il6towt04X5
Hardware Class: framebuffer
Model: "Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS Intel(r) 82945GM Chipset Family Graphics Controller"
Vendor: "Intel Corporation"
Device: "Intel(r) 82945GM Chipset Family Graphics Controller"
SubVendor: "Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS"
SubDevice:
Revision: "Hardware Version 0.0"
Memory Size: 7 MB + 704 kB
Memory Range: 0xd0000000-0xd07affff (rw)
Mode 0x0305: 1024x768 (+1024), 8 bits
Mode 0x0317: 1024x768 (+2048), 16 bits
Mode 0x0318: 1024x768 (+4096), 24 bits
Mode 0x0312: 640x480 (+2560), 24 bits
Mode 0x0314: 800x600 (+1600), 16 bits
Mode 0x0315: 800x600 (+3200), 24 bits
Mode 0x0301: 640x480 (+640), 8 bits
Mode 0x0303: 800x600 (+832), 8 bits
Mode 0x0311: 640x480 (+1280), 16 bits
Config Status: cfg=new, avail=yes, need=no, active=unknown
在内核后面加入了vga=0x0317,是1024x768的16位色。最后刷新一下
代码:
sudo update-initramfs -u
重启红旗Linux系统初体验[图文]Linux多线程处理知识相关资讯 directfb Ubuntu教程
- DirectFB Dispatch_Write函数缓冲 (06/15/2014 10:57:51)
- Ubuntu教程 - 使用Ubuntu拷贝CD和 (12/18/2013 14:38:16)
- 让Ubuntu 12.10支持RAR和7Z文件解 (11/15/2012 18:51:50)
| - DirectFB Dispatch_Write函数缓冲 (06/15/2014 10:56:17)
- 完美安装Ubuntu 12.10最新AMD显卡 (11/27/2012 08:17:47)
- Win 7硬盘安装Ubuntu 12.10 (11/05/2012 13:30:34)
|
本文评论 查看全部评论 (1)
评论声明- 尊重网上道德,遵守中华人民共和国的各项有关法律法规
-
|