Bryan,

I didn't run into any of these issues when building DirectFB itself 
(libdirect, libdirectfb, libfusion).  The annoying libtool issues came 
when building DirectFB-extra and FusionSound.  Here's the relevant 
portion of my build environment.  Perhaps it will help you.

export FFMPEG_INC=$(INSTALLDIR)/usr/local/include
export FREETYPE_INC=$(INSTALLDIR)/usr/local/include/freetype2
export LIBXML2_INC=$(INSTALLDIR)/usr/local/include/libxml2
export ALSALIB_INC=$(INSTALLDIR)/usr/local/include/alsa
export SDL_INC=$(INSTALLDIR)/usr/local/include/SDL
export SDL_IMAGE_INC=$(INSTALLDIR)/usr/local/include/SDL
export SDL_TTF_INC=$(INSTALLDIR)/usr/local/include/SDL
export PNG_INC=$(INSTALLDIR)/usr/local/include
export JPEG_INC=$(INSTALLDIR)/usr/local/include
export DIRECTFB_INC=$(INSTALLDIR)/usr/local/include/directfb
export 
DIRECTFB_INTERNAL_INC=$(INSTALLDIR)/usr/local/include/directfb-internal
export FUSIONSOUND_INC=$(INSTALLDIR)/usr/local/include/fusionsound
export 
FUSIONSOUND_INTERNAL_INC=$(INSTALLDIR)/usr/local/inlude/fusionsound-internal

export FFMPEG_LIB=$(INSTALLDIR)/usr/local/lib
export FREETYPE_LIB=$(INSTALLDIR)/usr/local/lib
export LIBXML2_LIB=$(INSTALLDIR)/usr/local/lib
export ALSALIB_LIB=$(INSTALLDIR)/usr/local/lib
export SDL_LIB=$(INSTALLDIR)/usr/local/lib
export SDL_IMAGE_LIB=$(INSTALLDIR)/usr/local/lib
export SDL_TTF_LIB=$(INSTALLDIR)/usr/local/lib
export PNG_LIB=$(INSTALLDIR)/usr/local/lib
export JPEG_LIB=$(INSTALLDIR)/usr/local/lib
export DIRECTFB_LIB=$(INSTALLDIR)/usr/local/lib
export FUSIONSOUND_LIB=$(INSTALLDIR)/usr/local/lib

export TOOLS=/usr/local/eldk.arm/usr/bin
export PATH+=:$(TOOLS)
export LINUXDIRNAME=linux-2.6
export TOP=$(shell pwd)
export USER=$(TOP)/support
export BUILDDIR=$(USER)/build/VIC
export INSTALLDIRNAME=vic_sdk-install
export INSTALLDIR=$(TOP)/$(INSTALLDIRNAME)
export LINUXDIR=$(TOP)/kernels/$(LINUXDIRNAME)
export LINUXINCLUDE=$(LINUXDIR)/include
export CROSS_COMPILE=arm-linux-
export HOST=arm-linux
export KVERSION=2.6
export SDK_NAME=VIC_SDK
export SDK_VERSION=1.0
export SDK_MAJOR=$(shell echo $(SDK_VERSION) | cut -d. -f1)
export SDK_MINOR=$(shell echo $(SDK_VERSION) | cut -d. -f2)
export SDK_PATCH=$(shell echo $(SDK_VERSION) | cut -d. -f3)
export SDK_BUILD_DEBUG=1
export CC=$(CROSS_COMPILE)gcc
export AR=$(CROSS_COMPILE)ar
export AS=$(CROSS_COMPILE)as
export LD=$(CROSS_COMPILE)ld
export NM=$(CROSS_COMPILE)nm
export OBJCOPY=$(CROSS_COMPILE)objcopy
export OBJDUMP=$(CROSS_COMPILE)objdump
export RANLIB=$(CROSS_COMPILE)ranlib
export STRIP=$(CROSS_COMPILE)strip

DirectFB: $(BUILDDIR)/DirectFB/Makefile
    $(MAKE) -C $(BUILDDIR)/DirectFB
DirectFB-install: DirectFB
    DESTDIR=$(INSTALLDIR)                            \
    $(MAKE) -C $(BUILDDIR)/DirectFB install
DirectFB-clean:
    $(MAKE) -C $(BUILDDIR)/DirectFB clean
DirectFB-distclean:
    $(MAKE) -C $(BUILDDIR)/DirectFB distclean
$(BUILDDIR)/DirectFB/Makefile:
    chmod +x $(USER)/DirectFB/configure
    mkdir -p $(BUILDDIR)/DirectFB
    (cd $(BUILDDIR)/DirectFB;                        \
        DESTDIR=$(INSTALLDIR)                        \
        CFLAGS="-I$(INSTALLDIR)/usr/local/include"            \
        LDFLAGS="-L$(INSTALLDIR)/usr/local/lib"                \
        LIBS="-Wl,--rpath-link -Wl,$(INSTALLDIR)/usr/local/lib"        \
        PKG_CONFIG_SYSROOT="$(INSTALLDIR)"                \
        PKG_CONFIG_PATH="$(INSTALLDIR)/usr/local/pkgconfig"        \
        $(USER)/DirectFB/configure                    \
        --host=$(HOST)                             \
        --prefix=/usr/local                        \
        --enable-debug-support                         \
        --disable-network                        \
        --disable-voodoo                         \
        --disable-mmx                             \
        --disable-sse                             \
        --disable-sdl                            \
        --disable-vnc                             \
        --disable-sysfs                         \
        --disable-jpeg                             \
        --disable-zlib                            \
        --enable-png                             \
        --disable-gif                             \
        --disable-freetype                         \
        --disable-x11                            \
        --disable-video4linux                         \
        --disable-video4linux2                         \
        --enable-fbdev                            \
        --with-gfxdrivers=davinci                     \
        --with-inputdrivers=none                    \
        --with-tools                             \
        --enable-debug                            \
    );


DirectFB-extra: $(BUILDDIR)/DirectFB-extra/Makefile
    $(MAKE) -C $(BUILDDIR)/DirectFB-extra
DirectFB-extra-install: DirectFB-extra
    DESTDIR=$(INSTALLDIR)                            \
    $(MAKE) -C $(BUILDDIR)/DirectFB-extra install
DirectFB-extra-clean:
    $(MAKE) -C $(BUILDDIR)/DirectFB-extra clean
DirectFB-extra-distclean:
    $(MAKE) -C $(BUILDDIR)/DirectFB-extra distclean
$(BUILDDIR)/DirectFB-extra/Makefile:
    chmod +x $(USER)/DirectFB-extra/configure
    mkdir -p $(BUILDDIR)/DirectFB-extra
    (cd $(BUILDDIR)/DirectFB-extra;                        \
        DESTDIR="$(INSTALLDIR)"                        \
        CFLAGS="-I$(DIRECTFB_INC)                    \
            -I$(DIRECTFB_INTERNAL_INC)                \
            -I$(FFMPEG_INC)/libavcodec                \
            -I$(FFMPEG_INC)/libavformat                \
            -I$(FUSIONSOUND_INC)                    \
            -I$(FUSIONSOUND_INTERNAL_INC)                \
        "                                \
        LDFLAGS="-L$(INSTALLDIR)/usr/local/lib"                \
        PKG_CONFIG_SYSROOT="$(INSTALLDIR)"                \
        PKG_CONFIG_PATH="$(INSTALLDIR)/usr/local/lib/pkgconfig"        \
        $(USER)/DirectFB-extra/configure                \
        --host=$(HOST)                            \
        --prefix=/usr/local                        \
        --disable-fast-install                        \
        --disable-zlib                            \
        --disable-imlib2                        \
        --disable-pnm                            \
        --disable-svg                             \
        --disable-mpeg2                            \
        --enable-bmp                            \
        --disable-jpeg2000                        \
        --disable-openquicktime                        \
        --disable-avifile                        \
        --disable-libmpeg3                        \
        --disable-flash                            \
        --disable-xine                            \
        --disable-swfdec                        \
        --enable-ffmpeg                            \
        --with-fusionsound                        \
    );


FusionSound: $(BUILDDIR)/FusionSound/Makefile
    $(MAKE) -C $(BUILDDIR)/FusionSound
FusionSound-install: FusionSound
    DESTDIR=$(INSTALLDIR)                            \
    $(MAKE) -C $(BUILDDIR)/FusionSound install
FusionSound-clean:
    $(MAKE) -C $(BUILDDIR)/FusionSound clean
FusionSound-distclean:
    $(MAKE) -C $(BUILDDIR)/FusionSound distclean
$(BUILDDIR)/FusionSound/Makefile:
    chmod +x $(USER)/FusionSound/configure
    mkdir -p $(BUILDDIR)/FusionSound
    (cd $(BUILDDIR)/FusionSound;                        \
        DESTDIR=$(INSTALLDIR)                        \
        CFLAGS="-I$(DIRECTFB_INC) -I$(DIRECTFB_INTERNAL_INC)        \
            -I$(INSTALLDIR)/usr/local/include"            \
        LDFLAGS="-L$(DIRECTFB_LIB)"                    \
        LIBS="-Wl,--rpath-link -Wl,$(INSTALLDIR)/usr/local/lib"        \
        PKG_CONFIG_SYSROOT="$(INSTALLDIR)"                \
        PKG_CONFIG_PATH="$(INSTALLDIR)/usr/local/lib/pkgconfig"        \
        $(USER)/FusionSound/configure                    \
        --host=$(HOST)                             \
        --prefix=/usr/local                        \
        --without-voodoo                         \
        --with-drivers=alsa,oss                     \
        --without-examples                        \
        --without-tools                         \
        --without-timidity                         \
        --without-vorbis                        \
        --without-tremor                         \
        --without-mad                             \
        --without-cdda                             \
        --without-ffmpeg                        \
        --without-playlist                        \
    );

Bryan Bui-Tuong wrote:
> Okay, that solved that problem, but now when I try to 'make install' I get
> the following error:
>
>
>
> libtool: install: warning: relinking `libfusion.la
>  (cd /home/bbui/Desktop/Graphics/DirectFB-1.1.1/lib/fusion; /bin/sh
> ../../libtool  --tag=CC --mode=relink arm-linux-gcc -O3 -ffast-math -pipe
> -D_GNU_SOURCE -Werror-implicit-function-declaration -version-info 1:0:1
> -release 1.1 -lz -o libfusion.la -rpath /usr/lib arena.lo call.lo conf.lo
> fusion.lo hash.lo lock.lo object.lo property.lo reactor.lo ref.lo
> shmalloc.lo vector.lo shm/libfusion_shm.la ../direct/libdirect.la -ldl
> -lpthread -inst-prefix-dir /opt/arcom/arm-linux) 
>
> arm-linux-gcc -shared  .libs/arena.o .libs/call.o .libs/conf.o
> .libs/fusion.o .libs/hash.o .libs/lock.o .libs/object.o .libs/property.o
> .libs/reactor.o .libs/ref.o .libs/shmalloc.o .libs/vector.o
> -Wl,--whole-archive shm/.libs/libfusion_shm.a -Wl,--no-whole-archive  -lz
> -L/opt/arcom/arm-linux/usr/lib -L/usr/lib -ldirect -ldl -lpthread
> -Wl,-soname -Wl,libfusion-1.1.so.0 -o .libs/libfusion-1.1.so.0.1.0
>
> /usr/lib/libz.so: could not read symbols: Invalid operation
> collect2: ld returned 1 exit status
> libtool: install: error: relink `libfusion.la' with the above command
> before installing it
>
>
>
> I've tried reconfiguring it and adding /opt/arcom/arm-linux/lib to my
> LD_LIBRARY_PATH, but when I do that, I am unable to run ./configure because
> it attempts to use the arm libraries to build the code.  Any additional help
> will be greatly appreciated.
>
>
>
> -----Original Message-----
> From: Brian G. Rhodes [mailto:[EMAIL PROTECTED] 
> Sent: Thursday, May 15, 2008 2:02 PM
> To: Bryan Bui-Tuong
> Cc: directfb-users@directfb.org
> Subject: Re: [directfb-users] libtool: install: error: cannot install
> `libfusion.la to a directory not ending in /usr/lib
>
> use DESTDIR=/opt/arcom/arm-linux and --prefix=/usr etc for 
> configure/autoconf and DESTDIR=/opt/arcom/arm-linux for make install.  
> libtool is completely ridiculous.  What's with the absolute paths at 
> compile time?!
>
> Bryan Bui-Tuong wrote:
>   
>> Hello everyone,
>>
>> I am trying to cross compile DirectFB 1.1.1 on my desktop for an arm board
>> and get the following error message when I do a 'make install
>> prefix=/opt/arcom/arm-linux':
>>
>>
>>
>>     
> ----------------------------------------------------------------------------
>   
>> -------------------------
>>
>>
>> test -z "/opt/arcom/arm-linux/lib" || /bin/mkdir -p
>> "/opt/arcom/arm-linux/lib"
>>  /bin/sh ../../libtool --mode=install /usr/bin/install -c
>> 'libfusion.la' '/opt/arcom/arm-linux/lib/libfusion.la'
>> libtool: install: error: cannot install `libfusion.la' to a directory
>> not ending in /usr/lib
>> make[4]: *** [install-libLTLIBRARIES] Error 1
>>
>>
>>
>>
>>     
> ----------------------------------------------------------------------------
>   
>> -------------------------
>>
>>
>>
>> These are my path settings and ./configure settings:
>>
>>
>>
>>     
> ----------------------------------------------------------------------------
>   
>> -------------------------
>>
>> CROSSCOMPILE=/opt/arcom/bin 
>> CC=arm-linux-gcc 
>> NM=arm-linux-nm  
>> LD=arm-linux-ld  
>> CXX=arm-linux-g++ 
>> RANLIB=arm-linux-ranlib  
>> AR=arm-linux-ar 
>> STRIP=arm-linux-strip 
>> ARMLINUX=/opt/arcom/arm-linux 
>> PATH=$ARMLINUX/bin:$CROSSCOMPILE:$ARMLINUX/lib:$PATH
>>
>> ./configure --disable-sdl --disable-osx --disable-x11 --disable-mmx
>> --disable-sse --disable-vnc --disable-video4linux --with-gfxdrivers=none
>> --with-inputdrivers=none --without-software --prefix=/usr --host=arm-linux
>> --target=arm-linux --build=i686-redhat-linux-gnu
>>
>>
>>     
> ----------------------------------------------------------------------------
>   
>> -------------------------
>>
>> Why am I not able to install into my arm-linux folder on my local drive
>> before I move it to the target drive?  
>>
>> Thanks in advance for all your help.
>>
>>
>> Bryan B.
>> SSC-PACIFIC
>> Electrical Engineer
>>
>>
>>
>> _______________________________________________
>> directfb-users mailing list
>> directfb-users@directfb.org
>> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users
>>
>>   
>>     
>
>
>
> _______________________________________________
> directfb-users mailing list
> directfb-users@directfb.org
> http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users
>
>   

_______________________________________________
directfb-users mailing list
directfb-users@directfb.org
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to