从 GSM-TCAP asn1 文件生成 C 代码时出错

Error in generating C code from GSM-TCAP asn1 files

我正在尝试为从 libosmo-asn1-TCAP. I have installed the osmocom libasnc1 编译器获得的 GSM-TCAP asn1 文件生成 C 代码(尝试了 master 和 aper-prefix 分支)和 运行 此代码:

asn1c -fcompound-names -gen-PER 
       DialoguePDUs.asn 
       tcap.asn 
       TCAPMessages.asn 
       TC-Notation-Extensions.asn 
       UnidialoguePDUs.asn

但是,编译器报如下语法错误:

ASN.1 grammar parse error near line 86 (token "returnResult"): syntax error, 
unexpected TOK_identifier Cannot parse "TCAPMessages.asn"

有谁知道这个问题的根源,以及如何解决?

您不需要编译asn 子目录中的所有asn 文件。您可以使用 rebuild script

asn1c $ASN/DialoguePDUs.asn $ASN/tcap.asn $ASN/UnidialoguePDUs.asn 

其他文件包含 asn1c 不支持的语法,其中一些已被重写以不使用此类语法,而另一些则根本不需要。