On Wednesday 06 February 2008, Luís Vitório Cargnini wrote: > Dear fellows, > Please I need some help cross compiling libvorbis for ARM. > The libogg is ok, the problem is in libvorbis after some compile lines > correct is produced the following error: > make[3]: Entering directory > `/home/lvcargnini/puc/instramed/toolchain/sources/ogg_vorbis/libvorbis-1.2. >0/lib' /bin/sh ../libtool --mode=link arm-linux-gnueabi-gcc -O20 > -ffast-math -D_REENTRANT -fsigned-char -DUSE_MEMORY_H > -L/opt/arm-linux/arm-linux-gnueabi/usr/lib -o libvorbis.la -rpath > /usr/lib -no-undefined -version-info 4:0:4 mdct.lo smallft.lo block.lo > envelope.lo window.lo lsp.lo lpc.lo analysis.lo synthesis.lo psy.lo > info.lo floor1.lo floor0.lo res0.lo mapping0.lo registry.lo > codebook.lo sharedbook.lo lookup.lo bitrate.lo -logg -lm > rm -fr .libs/libvorbis.so.0.4.0 > arm-linux-gnueabi-gcc -shared .libs/mdct.o .libs/smallft.o > .libs/block.o .libs/envelope.o .libs/window.o .libs/lsp.o .libs/lpc.o > .libs/analysis.o .libs/synthesis.o .libs/psy.o .libs/info.o > .libs/floor1.o .libs/floor0.o .libs/res0.o .libs/mapping0.o
Concentrate on the lines below. It appears your arm chroot is in /opt/arm-linux/arm-linux-gnueabi, but the linker tries to link libvorbis to the host libogg, which is a different architecture. Unless you want to fiddle with LDFLAGS, which doesn't always work (at least for me), my experience is that sometime brute force works better -- modify the correct Makefile (basically any Makefile in the libvorbis-1.2.0 directory and its subdirectories) that contains /usr/lib/libogg.so and replace that with -logg, making sure that somewhere in that line there's a -L/directory/to/libogg. Furthermore, there must be an argument to libvorbis configure script, something like --with-ogg=dir that will be the correct solution. Do ./configure --help. IvanK. > .libs/registry.o .libs/codebook.o .libs/sharedbook.o .libs/lookup.o > .libs/bitrate.o -L/opt/arm-linux/arm-linux-gnueabi/usr/lib > /usr/lib/libogg.so -lm -Wl,-soname -Wl,libvorbis.so.0 -o > .libs/libvorbis.so.0.4.0 > /usr/lib/libogg.so: could not read symbols: File in wrong format > > This is not a problem in the source code but in the conf, autoconf tools. > > The problem as you all can see is the /usr/lib/libogg.so near the end > in compilation command. How to avoid this and obligate it to use only > -logg nothing else. > Someone have already figure out this problem. _______________________________________________ Clfs-dev mailing list [email protected] http://lists.cross-lfs.org/listinfo.cgi/clfs-dev-cross-lfs.org
