Gsm Codec Compile

Home » Asterisk Users » Gsm Codec Compile
Asterisk Users 9 Comments

I was successful in compiling asterisk in raspbien except for the following error If I enable the gsm codec. It appears there is something in the Makefile n this directory that needs to be changed. Probably involving optimization. Not sure why it does not recognize the processor since it is one that is mentioned in the Makefile.

9 thoughts on - Gsm Codec Compile

  • OK set PROC to –

    OPTIMIZE+=-march=arm

    and now getting tons of errors in k6opt.s

    src/k6opt.s:350: Error: bad instruction `psllw %mm3,%mm0′
    src/k6opt.s:351: Error: bad instruction `movd %mm0,%eax’
    src/k6opt.s:352: Error: selected processor does not support ARM mode `movw %ax,(%esi)’
    src/k6opt.s:356: Error: bad instruction `emms’
    src/k6opt.s:358: Error: bad instruction `popl %esi’
    src/k6opt.s:359: Error: bad instruction `leave’
    src/k6opt.s:360: Error: bad instruction `ret’
    src/k6opt.s:367: Error: unrecognized symbol type “”
    src/k6opt.s:372: Error: unrecognized symbol type “”
    src/k6opt.s:382: Error: unrecognized symbol type “”
    src/k6opt.s:384: Error: bad instruction `pushl %ebp’
    src/k6opt.s:385: Error: bad instruction `movl %esp,%ebp’
    src/k6opt.s:386: Error: bad instruction `pushl %esi’

  • this is all very odd. I have been compiling on raspbian wheezy for a few months now, and have never come across this error

    -rw-r–r– 1 root root 6128 Aug 25 2013 codec_gsm.c
    -rw-r–r– 1 root root 126 Feb 8 08:50 codec_gsm.exports
    -rw-r–r– 1 root root 181808 Feb 8 08:50 codec_gsm.o

    I don’t have PROC defined in makeopts.in

    uname -a

    Linux hash42pi 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014
    armv6l GNU/Linux

    What could be causing my setup to compile ok, but not yours ?

    Julian

  • Hello Doug,

    Monday, March 3, 2014, 7:13:52 PM, you wrote:

    [snip]

    [snip]

    ^^^^^^

    I am not sure whether it is part of the problem, but the architecture on the machine appears to be armv6l (lower case L) whilst the Makefield has armv61 (the number one). A typo in the Makefile?

  • For the sake of the archives: Just use the system libgsm (make sure you have libgsm-dev installed). No point in using the bundled version.