Hi all, I'd like you to know i'm not able to build Speex library anymore from CVS without modfing the code in mdf.c. This is due to the fact that EVC++ compiler doesn't like memory allocations in this form: spx_word16_t w[N]; where N is not a constant. I know this is not an error for gcc compiler and ANSI standard but it is in VS2005 and EVC++ 4.0 If someone knows how to compile this with a MS compiler i would apreciate it. Regards Fabio -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20051220/6f5508c5/attachment.htm
I'll try fixing that. It's funny "gcc -ansi -Wall" doesn't even complain about it despite the fact it's not C89-compliant. In the mean time, you can always replace it with: spx_word16_t w[1024]; and you'll be fine (unless you try AEC with a frame size > 512). Sorry about the inconvenience. <cheap shot>Must be the price to pay for using an inferior compiler</cheap shot>. Jean-Marc Le mardi 20 d?cembre 2005 ? 11:13 +0100, Fabio a ?crit :> Hi all, > > I'd like you to know i'm not able to build Speex library anymore from > CVS without modfing the code in mdf.c. > This is due to the fact that EVC++ compiler doesn't like memory > allocations in this form: > > spx_word16_t w[N]; > > where N is not a constant. > I know this is not an error for gcc compiler and ANSI standard but it > is in VS2005 and EVC++ 4.0 > If someone knows how to compile this with a MS compiler i would > apreciate it. > > Regards > Fabio > > _______________________________________________ > Speex-dev mailing list > Speex-dev@xiph.org > http://lists.xiph.org/mailman/listinfo/speex-dev
> Sorry about the inconvenience. <cheap shot>Must be the price to pay for > using an inferior compiler</cheap shot>.I know it's an inferior compiler...but as long as they pay me to use it... :) Jean-Marc> > Le mardi 20 d?cembre 2005 ? 11:13 +0100, Fabio a ?crit : > > Hi all, > > > > I'd like you to know i'm not able to build Speex library anymore from > > CVS without modfing the code in mdf.c. > > This is due to the fact that EVC++ compiler doesn't like memory > > allocations in this form: > > > > spx_word16_t w[N]; > > > > where N is not a constant. > > I know this is not an error for gcc compiler and ANSI standard but it > > is in VS2005 and EVC++ 4.0 > > If someone knows how to compile this with a MS compiler i would > > apreciate it. > > > > Regards > > Fabio > > > > _______________________________________________ > > Speex-dev mailing list > > Speex-dev@xiph.org > > http://lists.xiph.org/mailman/listinfo/speex-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.xiph.org/pipermail/speex-dev/attachments/20051220/2d0f217a/attachment.html
On Tue, Dec 20, 2005 at 09:22:36PM +1100, Jean-Marc Valin wrote:> I'll try fixing that. It's funny "gcc -ansi -Wall" doesn't even complain > about it despite the fact it's not C89-compliant."gcc -ansi -pedantic -Wall" does the trick. Does seem like a bug if there are other major compilers that don't implement this though. Does the non-embedded MSVC also have this limitation? Note that just "gcc -ansi" doesn't actually build out of the box. Configure takes care of defining out use of the 'inline' keyword, but there still are a couple of C++-style comments. -r