Trying to get directfb to work on omap 3530. Have a working framebfer /dev/fb0
and LCD display that I can open and read/write to under Linux.
I cross compiled directFB and prerequisites and examples with the following settings .
export CROSS=/opt/eldk/usr/bin/arm-linux-gnueabi
export PATH=${PATH}:/opt/eldk/usr/bin
export CC=$CROSS-gcc
export LD=$CROSS-ld
export AR=$CROSS-ar
export NM=$CROSS-nm
export OBJDUMP=$CROSS-objdump
export OBJCOPY=$CROSS-objcopy
export STRIP=$CROSS-strip
export RANLIB=$CROSS-ranlib
export LIBTOOL=/opt/eldk/usr/bin/libtool
export ARCH=arm
export HOST=arm-linux
export BUILD=x86
export TARGET=arm-linux
export DFB=/home/don/dfb
export PROTOFS=$DFB/protofs
export PREFIX=$PROTOFS/usr/local
export LDFLAGS=-L$PREFIX/lib -lm
export CPPFLAGS=-I$PREFIX/include
export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig/
export PKG_CONFIG_SYSROOT_DIR=$PROTOFS/
export PKG_CONFIG_LIBDIR=$PREFIX/lib
###--Add /usr/local/lib /usr/lib to /etc/ld.so.conf
echo "make target directories if they don't exist"
mkdir -p $PREFIX/lib
mkdir -p $PREFIX/include
mkdir -p $PREFIX/share/directfb-examples
DIRECTFB_CFLAGS=-I$PREFIX/include
DIRECTFB_LIBS==-L$PREFIX/lib
libpng-1.5.1 //needed a patch
./configure --host=$HOST --prefix=$PREFIX
libjpeg/jpeg-8c
./configure --host=$HOST --build=$BUILD --target=$TARGET --enable-shared --prefix=$PREFIX
freetype-2.4.4
./configure --host=$HOST --build=$BUILD --target=$TARGET --prefix=$PREFIX
/DirectFB-1.4.10
./configure --host=$HOST --build=$BUILD --target=$TARGET --prefix=$PREFIX --disable-x11 \
--with-gfxdrivers=none --with-inputdrivers=keyboard,linuxinput --with-sysroot=$PROTOFS \
--without-tools --enable-fbdev --enable-memdev --sysconfdir=$PREFIX/etc
DirectFB-examples-1.2.0 //needed to -lm switch to makefile.in in src directory
./configure --host=$HOST --build=$BUILD --target=$TARGET --prefix=$PREFIX
I did a make and make install for each an all seemed to go well . Added
directfbrc to /etc and /usr/local/etc with following:
system=fbdev
module-dir=/usr/local/lib/directfb-1.4-5
device=/dev/fb0
mode = 640x480
depth=16
pixelformat=RGB16
log-file=/etc/dfb_log.txt
# Shared Memory Mount Point
tmpfs = /tmp
# Disable Cursor
no-cursor
# Disable Layer Initialization
no-init-layer = 0
Found it necessary to set the lib path.
export LD_LIBRARY_PATH=/usr/local/lib
fom /usr/local/bin I ran following.
# ./df_dok
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.4.10 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2010 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2011-03-22 20:07)
(!) DirectFB/core/system: No system found!
df_dok.c <1457>:
(#) DirectFBError [DirectFBCreate( &dfb )]: No (suitable) implementation found!
Program did not find the directfbrc file?
fom /usr/local/bin I ran following using -dfb
# ./df_dok --load-image ../share/directfb-examples/fish.png -dfb module-dir=/us
r/local/lib/didirectfb-1.4-5 system=fbdev device=/dev/fb0
DirectFB Benchmarking Demo version 1.2.0
Usage: df_dok [options]
Options:
--duration <milliseconds> Duration of each benchmark.
--size <width>x<height> Set benchmark size.
..... all options
Same result no matter what i choose for options.. just displayed options.
Tried the following example:
# ./df_andi -dfb module-dir=/usr/local/lib/directfb-1.4-5 system=fbdev device=
/dev/fb0
~~~~~~~~~~~~~~~~~~~~~~~~~~| DirectFB 1.4.10 |~~~~~~~~~~~~~~~~~~~~~~~~~~
(c) 2001-2010 The world wide DirectFB Open Source Community
(c) 2000-2004 Convergence (integrated media) GmbH
----------------------------------------------------------------
(*) DirectFB/Core: Single Application Core. (2011-03-22 20:07)
(!) DirectFB/core/system: No system found!
df_andi.c <462>:
(#) DirectFBError [DirectFBCreate( &dfb )]: No (suitable) implementation found!
#
Any idea what may be needed to run the examples and/or why programs don't see directfbrc?
Is directfb ready for prime time on the omap??
Thanks