ddd

三. DirectFB移植步骤

环境变量配置:

export  PREFIX=/usr

export  DEST_DIR=/home                //以上两个环境变量的是移植后库生成的位置,最好是把以后有提到的库都存放到/home目录下

            export PATH=$PATH:/home/opt/FriendlyARM/toolschain/4.5.1/bin
             export CC=arm-none-linux-gnueabi-gcc
             export LDFLAGS=-L$DEST_DIR$PREFIX/lib
             export CFLAGS="-g -I$DEST_DIR$PREFIX/include"
             export PKG_CONFIG_PATH=$DEST_DIR$PREFIX/lib/pkgconfig
             export FREETYPE_CFLAGS="-I${DEST_DIR}${PREFIX}/include/freetype2 -I${DEST_DIR}${PREFIX}/include"
             export PKG_CONFIG_PATH=${DEST_DIR}${PREFIX}/lib/pkgconfig
             export PKG_CONFIG_LIBDIR=$PKG_CONFIG_PATH
             export CFLAGS="-I${DEST_DIR}${PREFIX}/include/"
             export LDFLAGS="-L${DEST_DIR}${PREFIX}/lib"
             export LIBPNG_CFLAGS="-I${DEST_DIR}${PREFIX}/include/libpng12"
             export LIBPNG_LIBS="-L${DEST_DIR}${PREFIX}/lib -lpng12"
             export FREETYPE_CFLAGS="-I${DEST_DIR}${PREFIX}/include/freetype2 -I${DEST_DIR}${PREFIX}/include"
             export DIRECTFB_CFLAGS="-I${DEST_DIR}${PREFIX}/include/directfb -I${DEST_DIR}${PREFIX}/include"
             export FREETYPE_LIBS="-L${DEST_DIR}${PREFIX}/lib -lfreetype"

移植步骤:

1.

#Make zlib

cd $ZLIB

./configure --prefix=$PREFIX

make

make DESTDIR=$DEST_DIR install

2.

cd $LIBPNG

./configure --prefix=$PREFIX --host=arm-none-linux-gnueabi

make

make DESTDIR=$DEST_DIR install

3.

cd $LIBJPEG

./configure --prefix=$PREFIX --host=arm-none-linux-gnueabi

make

make DESTDIR=$DEST_DIR install

4.

cd $FREETYPE

./configure --prefix=$PREFIX  --host=arm-none-linux-gnueabi

make

make DESTDIR=$DEST_DIR install

5.

cd $DFB

./configure --host=arm-none-linux-gnueabi  --prefix=$PREFIX --disable-x11 --with-gfxdrivers=none --enable-jpeg --enable-png --enable-freetype --with-inputdrivers=linuxinput

make

make DESTDIR=$DEST_DIR install

错误及解决办法:

1. ../../lib/direct/atomic.h:188:70: error: expected ',' or '...' before 'new'

解决办法:进入到atomic.h文件,把关键字 new 改成new_1等任意不是关键词。

2. ../../lib/direct/serial.h:112:14: error: invalid conversion from 'void*' to 'volatile int*'

../../lib/direct/serial.h:112:14: error:   initializing argument 2 of 'int _D__atomic_add_return(int, volatile int*)'

解决办法:进入到atomic.h文件,把有这方面的调动, 通过强制转换把(void *) -> (volatile int *)

6.

cd $DFBEXAMPLE

./configure --prefix=$PREFIX --host=arm-none-linux-gnueabi

make

make DESTDIR=$DEST_DIR install

这样就完成了基本的DirectFB的移植,把/home/usr目录下的全部文件拷贝到开发板的/usr下,运行测试用例就知道成不成功了。

四. DirectFB的硬件加速配置

环境说明:这么加速你有移植成功了DirectFB,且你的开发板支持硬件加速功能。不同的硬件平台有不同的配置,我这里就说说我的配置。这里所说的目录都是/home/usr下。

步骤:

编译你的硬件加速模块,会生成相应的库文件。把生成的所有库放到/home/usr/lib下。

在/home/usr/lib/directfb-1.5-0目录下,创建目录gfxdrivers,并把编译硬件模块的有关DirectFB的库放到此目录下,我这里的库文件是libdirectfb_gal.so.

在/home/usr目录下,创建目录etc

进入到/home/usr目录下,在终端输入:no-software>>directfbrc

完成以上步骤后DirectFB就可以支持相应的硬件加速了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值