1asn1c(1) Version 0.9.28 asn1c(1)
2
3
4
6 asn1c -- the ASN.1 Compiler
7
9 asn1c [-E [-F] | -P | -R]
10 [-Sdir] [-X]
11 [-Wdebug-...] [-foption] [-gen-option] [-pdu={all|auto|Type}]
12 [-print-option]
13 input-filenames...
14
16 asn1c compiles ASN.1 specifications into a set of target language
17 (C/C++) encoders and decoders for BER, DER, PER, XER and other encoding
18 rules.
19
21 Stage Selection Options
22 -E Run the parsing stage only. Print the reconstructed ASN.1 text.
23
24 -F Used together with -E, instructs the compiler to stop after the
25 ASN.1 syntax tree fixing stage and dump the reconstructed ASN.1
26 specification to the standard output.
27
28 -P Dump the compiled output to the standard output instead of
29 creating the target language files on disk.
30
31 -R Restrict the compiler to generate only the ASN.1 tables,
32 omitting the usual support code.
33
34 -S directory
35 Use the specified directory with ASN.1 skeleton files.
36
37 -X Generate an XML DTD schema for the specified ASN.1 files.
38
39 Warning Options
40 -Werror
41 Treat warnings as errors; abort if any warning is produced.
42
43 -Wdebug-lexer
44 Enable lexer debugging during the ASN.1 parsing stage.
45
46 -Wdebug-fixer
47 Enable ASN.1 syntax tree fixer debugging during the fixing
48 stage.
49
50 -Wdebug-compiler
51 Enable debugging during the actual compile time.
52
53 Language Options
54 -fbless-SIZE
55 Allow SIZE() constraint for INTEGER, ENUMERATED, and other types
56 for which this constraint is normally prohibited by the
57 standard. This is a violation of ASN.1 standard, and the
58 compiler may fail to produce a meaningful code.
59
60 -fcompound-names
61 Using this option prevents name collisions in the target source
62 code by using complex names for target language structures.
63 (Name collisions may occur if the ASN.1 module reuses the same
64 identifiers in multiple contexts).
65
66 -findirect-choice
67 When generating code for a CHOICE type, compile the CHOICE
68 members as indirect pointers instead of declaring them inline.
69 Consider using this option together with -fno-include-deps to
70 prevent circular references.
71
72 -fincludes-quoted
73 Refer to header files in #includes using "double" instead of
74 <angle> quotes.
75
76 -fknown-extern-type=name
77 Pretend the specified type is known. The compiler will assume
78 the target language source files for the given type have been
79 provided manually.
80
81 -fline-refs
82 Include ASN.1 module's line numbers in generated code comments.
83
84 -fno-constraints
85 Do not generate ASN.1 subtype constraint checking code. This
86 may make a shorter executable.
87
88 -fno-include-deps
89 Do not generate courtesy #include lines for non-critical type
90 dependencies. Helps prevent namespace collisions.
91
92 -funnamed-unions
93 Enable unnamed unions in the definitions of target language's
94 structures.
95
96 -fwide-types
97 Use the unbounded size data types (INTEGER_t, ENUMERATED_t,
98 REAL_t) by default, instead of using the native machine's data
99 types (long, double).
100
101 Codecs Generation Options
102 -gen-PER
103 Generate the Packed Encoding Rules (PER) support code.
104
105 -pdu={all|auto|Type}
106 Create a PDU table for specified types, or discover Protocol
107 Data Units automatically. In case of -pdu=all, all ASN.1 types
108 defined in all modules will form a PDU table. In case of
109 -pdu=auto, all types not referenced by any other type will form
110 a PDU table. If Type is an ASN.1 type identifier, the
111 identifier is added to the generated PDU table. The last form
112 may be specified multiple times to add any number of PDUs.
113
114 Output Options
115 -print-constraints
116 When -EF options are also specified, this option forces the
117 compiler to explain its internal understanding of subtype
118 constraints.
119
120 -print-lines
121 Generate "-- #line" comments in -E output.
122
124 unber(1), enber(1).
125
127 Lev Walkin <vlm@lionet.info>.
128
129
130
131ASN.1 Compiler 2016-01-23 asn1c(1)