How to Cross Compile DirectFB
How to Cross Compile DirectFB
haigang.xu@samsung.com
Now I've successfully made DirectFB running. It's very interesting to do this: grab some software from the open source and compile them made them running on my board.
Well, I played some trick on making the directFB running.
DirectFB introduction,please see the wiki page http://www.directfb.org/wiki/
What I did
1. Get the source code from dirctFB
I download DirectFB-1.0.0-rc2.tar.gz
2.configure and compile
Let me suppose you've already set the enviroment for cross-compiling,indicating that you've already got the cross-compiler. I'm using 3.4.4.
I made a BUILD file ,you can refer to this and modify according to your path setting.
export CC=/cross-compile/bin/arm-linux-gcc
export AR=/cross-compile/bin/arm-linux-ar
export LD=/cross-compile/bin/arm-linux-ld
export RANLIB=/cross-compile/bin/arm-linux-ranlib
export PREFIX=/tftpboot/root/usr
./configure --host=arm-linux --build=i386-linux --target=arm --prefix=$PREFIX --libdir=$PREFIX/lib --include=$PREFIX/include --disable-x11 --enable-debug --disable-voodoo --disable-mmx disable-see --disable-sdl --enable-jpeg --enable-zlib --enable-png --disable-gif --enable-freetype --disable-video4linux --disable-video4linux2 --with-gfxdrivers=none --with-inputdrivers=none
3. Modify something on the configure file
3.1 add one line
"have_linux=yes"
if the have_linux is not enabled, the FBDev will not be selected
3.2 Change the MODULEDIR
from MODULEDIR=$libdir/$MODULEDIRNAME
to MODULEDIR=/usr/lib$MODULEDIRNAME
4. run ./BUILD, this script will finish the configure work
if you met problems, check the config.log,you will find something. "Every problem has a reason", said one of my colleagues.
5. make
Sometimes if you met "undefined symbol" problem, check the LDFLAGS or CFLAGS and add the path of these .h files or lib files
6 make install
make sure the prefix is correctly set(CAUTION:it should be under your rootfs path otherwise your Host system file will be covered then your linux will not be boot successfully next time), then do the make install
I'm newbie to GUI compiling. I'm a kernel device driver and now I am interested in the GUI porting.
0 Comments:
发表评论
<< Home