Erwan A
2008-Mar-28 10:23 UTC
[Speex-dev] speex - cross compil for ARM - problem ogg headers
Hi all, I try to compile speex for ARM. I follow the README.arm and i always have the same errors : make[2]: entrant dans le r?pertoire ? /usr/src/linphone/arm/speex-1.1.6/src ? source='speexenc.c' object='speexenc.o' libtool=no \ depfile='.deps/speexenc.Po' tmpdepfile='.deps/speexenc.TPo' \ depmode=gcc3 /bin/sh ../depcomp \ arm-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I../libspeex -I/usr/include -O2 -fno-exceptions -O2 -fno-exceptions -c `test -f 'speexenc.c' || echo './'`speexenc.c speexenc.c:49:21: ogg/ogg.h: Aucun fichier ou r?pertoire de ce type speexenc.c:73: error: parse error before '*' token speexenc.c: In function `oe_write_page': speexenc.c:76: error: `page' undeclared (first use in this function) speexenc.c:76: error: (Each undeclared identifier is reported only once speexenc.c:76: error: for each function it appears in.) speexenc.c:76: error: `fp' undeclared (first use in this function) speexenc.c: In function `main': speexenc.c:272: error: `ogg_stream_state' undeclared (first use in this function) speexenc.c:272: error: parse error before "os" speexenc.c:273: error: `ogg_page' undeclared (first use in this function) speexenc.c:274: error: `ogg_packet' undeclared (first use in this function) speexenc.c:443: error: `os' undeclared (first use in this function) speexenc.c:641: error: `op' undeclared (first use in this function) speexenc.c:657: error: `og' undeclared (first use in this function) make[2]: *** [speexenc.o] Erreur 1 make[2]: quittant le r?pertoire ? /usr/src/linphone/arm/speex-1.1.6/src ? I have remove the file /usr/include/ogg/ogg.h. Someone can help me Thanks, Erwan> Hi,> You should never point cross compiler to host includes, this may lead > to unpredictable results. You should cross-compile libogg and poiint > to crosscompiled version for includes. Hopefully this will solve your > problem.> -- > Regards, > Alexander Chemeris.So i have cross compiled libogg. Then i modified the speex-1.1.6 Makefile by changing the path of the includedir variable: includedir = $path_of_my_new_cross_compiled_libogg /include But i have still the same errors. Anyone have any ideas why this isn't working? Regards, Erwan _________________________________________________________________ Cr?ez gratuitement votre disque dur virtuel Windows Live SkyDrive ! http://skydrive.live.com
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/
Conrad Parker
2008-Apr-01 09:26 UTC
[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 <mout551 at hotmail.fr> 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 > >