[Speex-dev] cross compilation for ARM - ogg headers problem

Jean-Marc Valin jean-marc.valin at usherbrooke.ca
Tue Apr 1 09:05:03 PDT 2008


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
> 
> 


More information about the Speex-dev mailing list