[Speex-dev] cross compilation for ARM - ogg headers problem
Keith Kyzivat
kkyzivat at tripleplayint.com
Tue Apr 1 10:05:56 PDT 2008
IIRC, under ARM, I believe I was having issues with --without-libogg.
I resorted to just downloading libogg sources, setting up my
cross-compilation environment, and cross compiling it per the general build
directions (./configure, make, make install), then went back to building
speex -- everything worked like a charm for me then.
So -- Conrad. *Make sure* that you have libogg cross-compiled and installed
to your cross-compilation environment before you compile speex.
Make doubly sure that you're not pulling in your host's header files or
libraries. This is *very* important -- it will keep breaking if you do.
On Tue, Apr 1, 2008 at 12:05 PM, Jean-Marc Valin <
jean-marc.valin at usherbrooke.ca> wrote:
> I think --without-libogg should do the trick, no? (though I haven't
> actually tried it)
>
> Jean-Marc
>
> Conrad Parker a écrit :
> > On 01/04/2008, Erwan A <mout551 at hotmail.fr> wrote:
> >> Hi,
> >>
> >> Yes i agree with you. You don't have to delete these files.
> >>
> >> But if i cross compile with ogg header files, i have the following
> error :
> >>
> >>
> >> /usr/lib/libogg.so: could not read symbols: Invalid operation
> >> collect2: ld returned 1 exit status
> >> make[2]: *** [speexenc] Erreur 1
> >> make[2]: quittant le répertoire « /usr/src/linphone/arm/speex-1.1.6/src
> »
> >> make[1]: *** [all-recursive] Erreur 1
> >> make[1]: quittant le répertoire « /usr/src/linphone/arm/speex-1.1.6 »
> >> make: *** [all] Erreur 2
> >>
> >>
> >>
> >> Anyone have any ideas why this isn't working?
> >
> > It looks like it's trying to link against your host libogg, not the
> > cross-compiled version.
> >
> > Perhaps you should set your PKG_CONFIG_PATH to point to the where your
> > cross-compiled libogg.pc is, or just use the --with-ogg-libraries=DIR
> > option to ./configure.
> >
> > cheers,
> >
> > Conrad.
> >
> >> Regards,
> >> Erwan
> >>
> >> ----------------------------------------
> >> > Date: Tue, 1 Apr 2008 18:26:27 +0900
> >> > From: conrad at metadecks.org
> >> > To: speex-dev at xiph.org
> >> > Subject: Re: [Speex-dev] cross compilation for ARM - ogg headers
> problem
> >>
> >> > Hi,
> >> >
> >> > this problem seems to be coming up a lot lately -- the README.arm in
> >> > linphone tells people to remove libogg headers, but speexenc and
> >> > speexdec require them to build.
> >> >
> >> > Perhaps we need a README.arm in libspeex telling people not to
> remove
> >> > the libogg headers.
> >> >
> >> > K.
> >> >
> >>
> >>> On 01/04/2008, Erwan A wrote:
> >> >>
> >> >> Hi all,
> >> >>
> >> >> I am following the README.arm from Simon to cross compile
> linphone from my PC to an arm architecture. But i encounter problems about
> the ogg header.
> >> >>
> >> >> I have this following error when i write this line :
> >> >>
> >> >> ./configure --prefix=/usr --host=arm-linux --with-gnu-ld
> --disable-static --enable-fixed-point --enable-arm-asm
> >> >>
> >> >> the error is :
> >> >> .
> >> >> .
> >> >> make[2]: entrant dans le répertoire « /arm/speex-1.1.11/src »
> >> >> if arm-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include
> -I../include -I.. -I/root/armbuild/usr/include -O2 -fno-exceptions -O2
> -fno-exceptions -MT speexenc.o -MD -MP -MF ".deps/speexenc.Tpo" -c -o
> speexenc.o speexenc.c; \
> >> >> then mv -f ".deps/speexenc.Tpo" ".deps/speexenc.Po"; else
> rm -f ".deps/speexenc.Tpo"; exit 1; fi
> >> >> speexenc.c:49:21: ogg/ogg.h: Aucun fichier ou répertoire de ce
> type
> >> >> speexenc.c:68: error: parse error before '*' token
> >> >> speexenc.c: In function `oe_write_page':
> >> >> speexenc.c:71: error: `page' undeclared (first use in this
> function)
> >> >> speexenc.c:71: error: (Each undeclared identifier is reported only
> once
> >> >> speexenc.c:71: error: for each function it appears in.)
> >> >> speexenc.c:71: error: `fp' undeclared (first use in this function)
> >> >> speexenc.c: In function `main':
> >> >> speexenc.c:267: error: `ogg_stream_state' undeclared (first use in
> this function)
> >> >> speexenc.c:267: error: parse error before "os"
> >> >> speexenc.c:268: error: `ogg_page' undeclared (first use in this
> function)
> >> >> speexenc.c:269: error: `ogg_packet' undeclared (first use in this
> function)
> >> >> speexenc.c:438: error: `os' undeclared (first use in this
> function)
> >> >> speexenc.c:632: error: `op' undeclared (first use in this
> function)
> >> >> speexenc.c:648: error: `og' undeclared (first use in this
> function)
> >> >> make[2]: *** [speexenc.o] Erreur 1
> >> >> make[2]: quittant le répertoire « /arm/speex-1.1.11/src »
> >> >> make[1]: *** [all-recursive] Erreur 1
> >> >> make[1]: quittant le répertoire « /arm/speex-1.1.11 »
> >> >> make: *** [all] Erreur 2
> >> >>
> >> >>
> >> >> I had to follow this rules but i dont know how to solve the
> problem :
> >> >>
> >> >> First you need to remove ogg headers from your build system to
> avoid a dirty conflict between
> >> >> your build machine binaries and the arm binaries. They are usually
> in a libogg-dev package (rpm or deb).
> >> >>
> >> >>
> >> >> So, i have cross compiled libogg and put the ogg.h in the
> /usr/include/ogg/ directory of my host. and now i have this following error
> :
> >> >>
> >> >> /usr/lib/libogg.so: could not read symbols: Invalid operation
> >> >> collect2: ld returned 1 exit status
> >> >> make[2]: *** [speexenc] Erreur 1
> >> >> make[2]: quittant le répertoire « /usr/src/linphone/arm/speex-
> 1.1.6/src »
> >> >> make[1]: *** [all-recursive] Erreur 1
> >> >> make[1]: quittant le répertoire « /usr/src/linphone/arm/speex-
> 1.1.6 »
> >> >> make: *** [all] Erreur 2
> >> >>
> >> >>
> >> >> Do i miss somethings ? I had to copy or remove some ogg headers ?
> >> >> Thanks for your help.
> >> >>
> >> >> Regards
> >> >> Erwan.
> >> >> _________________________________________________________________
> >> >> Découvrez les profils Messenger de vos amis !
> >> >> http://home.services.spaces.live.com/
> >> >> _______________________________________________
> >> >> Speex-dev mailing list
> >> >> Speex-dev at xiph.org
> >> >> http://lists.xiph.org/mailman/listinfo/speex-dev
> >> >>
> >> >>
> >> > _______________________________________________
> >> > Speex-dev mailing list
> >> > Speex-dev at xiph.org
> >> > http://lists.xiph.org/mailman/listinfo/speex-dev
> >>
> >>
> >> _________________________________________________________________
> >> Vos e-mails vous suivent partout ! Mettez Hotmail sur votre mobile !
> >> http://www.messengersurvotremobile.com/?d=hotmail
> >>
> >> _______________________________________________
> >> Speex-dev mailing list
> >> Speex-dev at xiph.org
> >> http://lists.xiph.org/mailman/listinfo/speex-dev
> >>
> >>
> > _______________________________________________
> > Speex-dev mailing list
> > Speex-dev at xiph.org
> > http://lists.xiph.org/mailman/listinfo/speex-dev
> >
> >
> _______________________________________________
> Speex-dev mailing list
> Speex-dev at xiph.org
> http://lists.xiph.org/mailman/listinfo/speex-dev
>
--
Keith Kyzivat
SIPez LLC.
SIP VoIP, IM and Presence Consulting
http://www.SIPez.com
tel: +1 (617) 273-4000
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20080401/cf384bb5/attachment-0001.htm
More information about the Speex-dev
mailing list