UNI-MRCP Asterisk Module make error

747 Views Asked by At

I have an issue while installing UNI-Mrcp Asterisk module. It just fails and i truly don't have an idea why... The error after running make is below:

Makefile:434: recipe for target 'res_speech_unimrcp.lo' failed
make[1]: *** [res_speech_unimrcp.lo] Error 1
make[1]: Leaving directory '/opt/asterisk-unimrcp-1.5.0/res-speech-unimrcp'
Makefile:410: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1

And the very first line that fails is:

Making all in res-speech-unimrcp
make[1]: Entering directory '/opt/asterisk-unimrcp-1.5.0/res-speech-unimrcp'
  CC       res_speech_unimrcp.lo
In file included from res_speech_unimrcp.c:28:0:
../include/ast_compat_defs.h:43:42: error: operator '<=' has no right operand
      && (patch) <= ASTERISK_PATCH_VERSION))

I have installed successfully MRCP 1.5 and MRCP depts 1.5 - no drama here.

I am running Asterisk 11 certified. Configuration report does not show signs of anything missing/broken

****************************** REPORT ******************************

Asterisk version.............. : certified/11.6
UniMRCP version............... : 1.5.0
UniMRCP modules version....... : 1.5.0

Compiler...................... : gcc
Compiler flags................ : -g -O2
Preprocessor definitions...... :
Linker flags.................. :

Modules install path...........: /usr/lib/asterisk/modules
Configuration install path.....: /etc/asterisk
XML doc install path...........: /var/lib/asterisk/documentation/thirdparty

Speech resource module.........: yes
Application module.............: yes

I have tried re-installing, different versions, different install order... but whatever I do it always fails on the Asterisk module with the same error. Any help much appreciated

1

There are 1 best solutions below

0
On BEST ANSWER

Ok so the issue is with the 'detected' asterisk name - any certified (up to date) version of Asterisk will be detected as 'certified/xx.xx.xx'. This is not a canonical asterisk name so that's why it's misinterpreting the name due to the 'certified' bit. In order to go around this issue when running configure a parameter has to be passed - in my case it was:

./configure --with-asterisk-version=11.6.0  

Note: Its necessary to provide FULL version, not just 11.6 as this will fail.