Closed aliasgherman closed 4 years ago
You need to check the error log: pycrate_asn1c.err.ASN1ProcTextErr: UL-DCCH-MessageType.messageClassExtension.c2.failureInformation2-r16: ASN1RefType to FailureInformation2-r16, undefined
Looking at your file, it seems there is a typo here at line 10022:
--- ASN1START
FailureInformation2-r16 ::= SEQUENCE {
where it should be -- ASN1START
.
Or you patch the extraction script to handle this case, or you patch the txt file of the 3GPP TS.
When you make it working, do not hesitate to do a clean pull request. Thanks
Hi Mitshell, Indeed you caught it right. I modified the extract.py script to handle similar cases and the script for updating went further however, it ended up with another error.
I have not yet tried to explore the code for pycrate yet so the exceptions seem alien to me. If you have any directions for me here then I would be glad to work on it. Else, I may give it another go later this week to understand more.
[proc] starting with ASN.1 specification: 3GPP_EUTRAN_RRC_36331 [proc] [EUTRA-UE-Variables.asn] module EUTRA-UE-Variables (oid: []): 31 ASN.1 assignments found [proc] [EUTRA-Sidelink-Preconf.asn] module EUTRA-Sidelink-Preconf (oid: []): 28 ASN.1 assignments found [proc] [NBIOT-RRC-Definitions.asn] module NBIOT-RRC-Definitions (oid: []): 341 ASN.1 assignments found [proc] [EUTRA-RRC-Definitions.asn] module EUTRA-RRC-Definitions (oid: []): 2271 ASN.1 assignments found [proc] [PC5-RRC-Definitions.asn] module PC5-RRC-Definitions (oid: []): 7 ASN.1 assignments found [proc] [EUTRA-InterNodeDefinitions.asn] module EUTRA-InterNodeDefinitions (oid: []): 72 ASN.1 assignments found [proc] [NBIOT-InterNodeDefinitions.asn] module NBIOT-InterNodeDefinitions (oid: []): 17 ASN.1 assignments found [proc] [NBIOT-UE-Variables.asn] module NBIOT-UE-Variables (oid: []): 6 ASN.1 assignments found --- compilation cycle --- --- verifications --- Traceback (most recent call last): File "/home/aamhabiby/Desktop/software/miniconda3/envs/condaml2/lib/python3.7/runpy.py", line 193, in _run_module_as_main "main", mod_spec) File "/home/aamhabiby/Desktop/software/miniconda3/envs/condaml2/lib/python3.7/runpy.py", line 85, in _run_code exec(code, run_globals) File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnproc.py", line 1272, in
generate_all() File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnproc.py", line 1254, in generate_all compile_spec(kwargs) File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnproc.py", line 88, in compile_spec compile_text(spec_texts, kwargs) File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnproc.py", line 290, in compile_text verify_modules(**kwargs) File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnproc.py", line 1029, in verify_modules void = O.get_cont() File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnobj.py", line 1279, in get_cont self._verif_typeref() File "/home/aamhabiby/Desktop/software/pycrate/pycrate_asn1c/asnobj.py", line 1069, in _verif_typeref .format(self.fullname()))) pycrate_asn1c.err.ASN1ProcLinkErr: VarMeasReport.poolsTriggeredListNR-r16: typeref not yet compiled
Except the issue with FailureInformation2-r16, this RRC LTE g00 release compiles fine on my laptop:
[proc] [3GPP_EUTRAN_RRC_36331_g00/EUTRA-UE-Variables.asn] module EUTRA-UE-Variables (oid: []): 31 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/EUTRA-Sidelink-Preconf.asn] module EUTRA-Sidelink-Preconf (oid: []): 28 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/NBIOT-RRC-Definitions.asn] module NBIOT-RRC-Definitions (oid: []): 341 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/EUTRA-RRC-Definitions.asn] module EUTRA-RRC-Definitions (oid: []): 2271 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/PC5-RRC-Definitions.asn] module PC5-RRC-Definitions (oid: []): 7 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/EUTRA-InterNodeDefinitions.asn] module EUTRA-InterNodeDefinitions (oid: []): 72 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/NBIOT-InterNodeDefinitions.asn] module NBIOT-InterNodeDefinitions (oid: []): 17 ASN.1 assignments found
[proc] [3GPP_EUTRAN_RRC_36331_g00/NBIOT-UE-Variables.asn] module NBIOT-UE-Variables (oid: []): 6 ASN.1 assignments found
--- compilation cycle ---
--- compilation cycle ---
--- verifications ---
[proc] ASN.1 modules processed: ['EUTRA-UE-Variables', 'EUTRA-Sidelink-Preconf', 'NBIOT-RRC-Definitions', 'EUTRA-RRC-Definitions', 'PC5-RRC-Definitions', 'EUTRA-InterNodeDefinitions', 'NBIOT-InterNodeDefinitions', 'NBIOT-UE-Variables']
[proc] ASN.1 objects compiled: 2561 types, 0 sets, 204 values
[proc] done
Did you change any other thing on your side ?
Hi, I have attached the 3gpp_f00 file from my side.
Then, I removed pycrate completely. Cloned the repo again, repeated the steps as listed above. The file compiles without issues. I am not sure if the previous failed verifications were the cause of this.
I am on Ubuntu 18.04 with anaconda installation.
Closing the issue from my side.
Steps Followed:
Please can you help me understand more on the dependencies for updating the ASN files. Specifically the 3GPP ones. 36331-g00.txt
Error :