2008-02-06 13:57:43     Building DirectFB for BF548

Document created by Aaronwu Employee on Aug 5, 2013Last modified by Aaronwu Employee on Aug 5, 2013
Version 2Show Document
  • View in full screen mode

2008-02-06 13:57:43     Building DirectFB for BF548

Simon Budig (GERMANY)

Message: 50770    Hi all.

 

I have read the other thread about building DirectFB but currently don't even get that far - I wonder what I am missing.

 

My checkout is at revision r6175 and includes some fixes R. Getz did to the directFB examples (The toolchain I use is at revision r2169 IIRC). I had to increase the size of the image, because otherwise the default configuration for the bf548 would not fit. I then enabled the DirectFB examples and compilation stopped with some missing symbols in libpng (which probably should come from libz):

 

bfin-uclinux-gcc -I/home/simon/uclinux-dist/staging/usr/include/freetype2 \

    -I/home/simon/uclinux-dist/staging/usr/include -ffast-math -pipe -pipe -Wall -g \

    -O2 -mcpu=bf548-0.0 -D_GNU_SOURCE -Werror-implicit-function-declaration \

    -Wl,-elf2flt -mcpu=bf548-0.0 -o dfbpenmount dfbpenmount.o  ../src/.libs/libdirectfb.a \

    /home/simon/uclinux-dist/lib/DirectFB/build-DirectFB-1.1.1/lib/fusion/.libs/libfusion.a \

    ../lib/fusion/.libs/libfusion.a /home/simon/uclinux-dist/lib/DirectFB/build-DirectFB-1.1.1/lib/direct/.libs/libdirect.a \

    ../lib/direct/.libs/libdirect.a -lz -lpthread

 

/home/simon/uclinux-dist/staging/usr/lib/libpng12.a(libpng12_la-png.o): In function `png_reset_zstream':

../libpng-1.2.24/png.c:761: undefined reference to `_inflateReset'

/home/simon/uclinux-dist/staging/usr/lib/libpng12.a(libpng12_la-png.o): In function `png_calculate_crc':

../libpng-1.2.24/png.c:229: undefined reference to `_crc32'

 

[...]

 

 

Other missing symbols are _inflate, _inflateInit_, _crc32 and _pow (from libm?)

It seems that the static linking against libpng goes wrong here. Any Idea whats the problem?

 

Another thing is, that apparently the configure process of DirectFB does not properly detect the Linux Kernel for Framebuffer support:

 

checking for stdbool.h... yes

configure: WARNING:

*** no linux kernel -- building without linux fbdev support.

checking for sysfs_get_mnt_path in -lsysfs... no

configure: WARNING:  *** libsysfs not found -- Building without sysfs support.

checking for jpeg_destroy_decompress in -ljpeg... yes

 

The source of this problem is, that - even when --enable-fbdev is hardcoded in the configure line from the uclinux makefile - it gets overridden when the target system does not seem to be a linux:

 

(from configure.in:)

 

dnl Test for Linux frame buffer device

AC_ARG_ENABLE(fbdev,

  [  --enable-fbdev            build with linux fbdev support [[default=auto]]],,

  enable_fbdev=yes)

 

if test "$have_linux" = "no"; then

  enable_fbdev=no

  AC_MSG_WARN([

*** no linux kernel -- building without linux fbdev support.])

fi

 

and $have_linux is determined by:

 

case "$target_or_host" in

  *-linux*)

    have_linux=yes

    ;;

 

but $target is (I am unclear about this) either "bfin-uclinux" or "bfin-unknown-uclinux", which does not match the above pattern.

 

This seems to need a fix I think...

 

What currently bugs me the most is the linking issue. Zlib definitely is enabled in the configuration (automatically) and even adding it as a hard dependency to the KConfig option for the directfb-examples does not help.

 

Any clue whats going on here?

 

Thanks,

        Simon

QuoteReplyEditDelete

 

 

2008-02-06 16:26:41     Re: Building DirectFB for BF548

Mike Frysinger (UNITED STATES)

Message: 50774    we havent really played with DirectFB in the FLAT format, so not too surprised it fails ...

 

ive fixed the linking issues in the branch/trunk as well as the mis-detection of uclinux as non-linux

QuoteReplyEditDelete

 

 

2008-02-07 07:37:00     Re: Building DirectFB for BF548

Simon Budig (GERMANY)

Message: 50818    Ah, Ok. I got the impression from the other thread that FLAT would be the way to go.

 

What *do* you actually use? In fact a complete configuration (plus informations of the SVN revisions used, there seem to be some problems related to the new kernel at the moment) of a state where the directfb-examples do run on a EZKIT-BF548 would help me a lot.

 

Thanks for fixing the linking issues, will play with this.

 

Bye,

        Simon

QuoteReplyEditDelete

 

 

2008-02-07 09:34:20     Re: Building DirectFB for BF548

Robin Getz (UNITED STATES)

Message: 50821    Simon:

 

For the 548, I build lots of stuff, and put everything on the hard drive.

 

but I build with fdpic.

 

conf files attached (created with make bugreport)

bugreport.tgz

Attachments

Outcomes