[Splashy-devel] Re: Fwd: libdirectfb ft2.a

Luis M lemsx1 at gmail.com
Sun Feb 26 00:51:47 UTC 2006


Hello Guillem,

Ah, you are the reason why Splashy tt font support is working now... I
didn't realize it. I installed the latest package included in Ubuntu
Dapper (perhaps that's the one you are talking about).

Good. And thanks for taking time to reply to my requests... As of now
everything seems to be working (for the most part). We are still using
our own directfb-config script. I might venture into using the one
included in your package to see if it allows me to compile splashy.
Right now this is what we do to get splashy compiled statically:

$> ./directfb-config --cflags --libs --graphics=all
--imageprovider=gif,png,jpeg --input=keyboard --font=default,ft2
-I/usr/include/directfb -D_REENTRANT -static -Wl,-udirectfb_fbdev
/usr/lib/directfb-0.9.22/systems/libdirectfb_fbdev.a
-Wl,-udirectfbwm_default
/usr/lib/directfb-0.9.22/wm/libdirectfbwm_default.a 
-Wl,-uIDirectFBFont_Default
/usr/lib/directfb-0.9.22/interfaces/IDirectFBFont/libidirectfbfont_default.a
-Wl,-uIDirectFBFont_FT2
/usr/lib/directfb-0.9.22/interfaces/IDirectFBFont/libidirectfbfont_ft2.a
/usr/lib/libfreetype.a  
/usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.a
-Wl,-uIDirectFBImageProvider_GIF 
/usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_png.a
-Wl,-uIDirectFBImageProvider_PNG /usr/lib/libpng.a /usr/lib/libz.a
/usr/lib/libpthread.a /usr/lib/libm.a /usr/lib/libc.a 
/usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_jpeg.a
-Wl,-uIDirectFBImageProvider_JPEG  -ljpeg
-L/usr/lib/directfb-0.9.22/inputdrivers  -Wl,-udirectfb_keyboard
/usr/lib/directfb-0.9.22/inputdrivers/libdirectfb_keyboard.a 
-Wl,-udirectfb_ati128
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_ati128.a
-Wl,-udirectfb_cyber5k
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_cyber5k.a
-Wl,-udirectfb_i810
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_i810.a
-Wl,-udirectfb_i830
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_i830.a
-Wl,-udirectfb_mach64
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_mach64.a
-Wl,-udirectfb_neomagic
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_neomagic.a
-Wl,-udirectfb_nsc
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_nsc.a
-Wl,-udirectfb_radeon
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_radeon.a
-Wl,-udirectfb_savage
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_savage.a
-Wl,-udirectfb_sis315
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_sis315.a
-Wl,-udirectfb_tdfx
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_tdfx.a 
/usr/lib/libz.a -L/usr/lib /usr/lib/libdirectfb.a /usr/lib/libfusion.a
/usr/lib/libdirect.a /usr/lib/libpthread.a /usr/lib/libz.a
/usr/lib/libz.a


Now the same thing with the included directfb-config:

$> directfb-config --cflags --libs --graphics=all
--imageprovider=gif,png,jpeg --input=keyboard --font=default,ft2
-I/usr/include/directfb -D_REENTRANT
-static
/usr/lib/directfb-0.9.22/systems/libdirectfb_fbdev.o
/usr/lib/directfb-0.9.22/wm/libdirectfbwm_default.o
/usr/lib/directfb-0.9.22/interfaces/IDirectFBFont/libidirectfbfont_default.o
/usr/lib/directfb-0.9.22/interfaces/IDirectFBFont/libidirectfbfont_ft2.o
-lfreetype/usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_gif.o
/usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_png.o
-lpng -lz -lm /usr/lib/directfb-0.9.22/interfaces/IDirectFBImageProvider/libidirectfbimageprovider_jpeg.o
-ljpeg
-L/usr/lib/directfb-0.9.22/inputdrivers
/usr/lib/directfb-0.9.22/inputdrivers/libdirectfb_keyboard.o
/usr/lib/directfb-0.9.22/gfxdrivers/libdirectfb_all.o
-L/usr/lib -ldirectfb -lfusion -ldirect -lpthread -lz

As you can see, the "all" option is not allowed, so, i need to do some
magic to allow all drivers. For now i simply hard coded it to do:

DFB = $(shell directfb-config --cflags --libs
--graphics=ati128,ch64.so,cle266,cyber5k,deon.so,i810,i830,mach64,matrox,neogic.so,neomagic,nsc,nvidia,nvid.so,radeon,sage.so,savage,sis315,tdfx,trox.so,unichrome
--imageprovider=gif,png,jpeg --input=keyboard --font=default,ft2 | sed
s/\.o /\.a /g )

In our src/Makefile.am. That kinda works but i get these errors:

/bin/sh ../libtool --tag=CC --mode=link gcc  -g -O2   -o splashy
-lpthread -lm -lc -static  /usr/lib/libglib-2.0.a /usr/lib/libpng.a
/usr/lib/libz.a splashy-splashy_main.o splashy-splashy_functions.o
splashy-xml_parser.o splashy-xml_config.o splashy-splashy_video.o
splashy-common_functions.o
mkdir .libs
gcc -g -O2 -o splashy splashy-splashy_main.o
splashy-splashy_functions.o splashy-xml_parser.o splashy-xml_config.o
splashy-splashy_video.o splashy-common_functions.o  -lpthread -lm -lc
/usr/lib/libglib-2.0.a /usr/lib/libpng.a /usr/lib/libz.a
splashy-splashy_functions.o: In function
`keyevent_loop':/usr/src/splashy/local/trunk/src/splashy_functions.c:450:
undefined reference to `DirectFBErrorFatal'
splashy-splashy_functions.o: In function
`_splashy_child':/usr/src/splashy/local/trunk/src/splashy_functions.c:628:
undefined reference to `DirectFBErrorFatal'
:/usr/src/splashy/local/trunk/src/splashy_functions.c:622: undefined
reference to `DirectFBErrorFatal'
splashy-splashy_video.o: In function
`video_allow_vt_switching':/usr/src/splashy/local/trunk/src/splashy_video.c:143:
undefined reference to `DirectFBSetOption'splashy-splashy_video.o: In
function `video_start_splash':/usr/src/splashy/local/trunk/src/splashy_video.c:457:
undefined reference to `DirectFBInit'
:/usr/src/splashy/local/trunk/src/splashy_video.c:458: undefined
reference to `DirectFBSetOption'
:/usr/src/splashy/local/trunk/src/splashy_video.c:459: undefined
reference to `DirectFBSetOption'
:/usr/src/splashy/local/trunk/src/splashy_video.c:460: undefined
reference to `DirectFBSetOption'
:/usr/src/splashy/local/trunk/src/splashy_video.c:461: undefined
reference to `DirectFBSetOption'
:/usr/src/splashy/local/trunk/src/splashy_video.c:470: undefined
reference to `DirectFBCreate'
:/usr/src/splashy/local/trunk/src/splashy_video.c:509: undefined
reference to `DirectFBErrorFatal'
:/usr/src/splashy/local/trunk/src/splashy_video.c:487: undefined
reference to `DirectFBErrorFatal'
:/usr/src/splashy/local/trunk/src/splashy_video.c:489: undefined
reference to `DirectFBErrorFatal'
:/usr/src/splashy/local/trunk/src/splashy_video.c:470: undefined
reference to `DirectFBErrorFatal'
:/usr/src/splashy/local/trunk/src/splashy_video.c:457: undefined
reference to `DirectFBErrorFatal'
splashy-splashy_video.o:/usr/src/splashy/local/trunk/src/splashy_video.c:502:
more undefined references to `DirectFBErrorFatal' follow
collect2: ld returned 1 exit status
distcc[30377] ERROR: compile (null) on localhost failed
make: *** [splashy] Error 1


I just don't think that the directfb-config package from upstream does
the right thing to allow static compilation. I'll reply to my own post
on directfb-users, now that the font support works, to let them know
how I got it to work. Perhaps they use my changes to directfb-config
upstream.

Thanks for you help anyway Guillem. I'll keep updating directfb as you
upload the packages to the debian repository.

On 2/23/06, Guillem Jover <guillem at debian.org> wrote:
> Hi,
>
> On Sun, Feb 19, 2006 at 12:47:05PM -0500, Luis M wrote:
> > I've attached an old version of an email I sent you previously. Could
> > you please help us?
[snip]


--
----)(-----
Luis Mondesi
System Administrator
Kiskeyix.org

"We think basically you watch television to turn your brain off, and
you work on your computer when you want to turn your brain on" --
Steve Jobs in an interview for MacWorld Magazine 2004-Feb

No .doc: http://www.gnu.org/philosophy/no-word-attachments.es.html


More information about the Splashy-devel mailing list