-
The option db specifies which database should
be used for the default instrumentation.
Default is volatile.
-
The option deprecated specifies if a deprecated
definition should be kept or not. If the option is
false the MIB compiler will ignore all deprecated
definitions.
Default is true.
-
The option relaxed_row_name_assign_check, if present,
specifies that the row name assign check shall not be done
strictly according to the SMI (which allows only the value 1).
With this option, all values greater than zero is allowed
(>= 1). This means that the error will be converted to a
warning.
By default it is not included, but if this option is present
it will be.
-
The option description specifies if the text
of the DESCRIPTION field will be included or not.
By default it is not included, but if this option is
present it will be.
-
The option reference specifies if the text
of the REFERENCE field, when found in a table definition,
will be included or not.
By default it is not included, but if this option is present
it will be. The reference text will be placed in the allocList
field of the mib-entry record (#me{}) for the table.
-
The option group_check specifies whether the
mib compiler should check the OBJECT-GROUP macro and
the NOTIFICATION-GROUP macro for correctness or not.
Default is true.
-
The option i specifies the path to search for
imported (compiled) MIB files. The directories should be
strings with a trailing directory delimiter.
Default is ["./"].
-
The option il (include_lib) also specifies a
list of directories to search for imported MIBs. It
assumes that the first element in the directory name
corresponds to an OTP application. The compiler will find
the current installed version. For example, the value
["snmp/mibs/"] will be replaced by ["snmp-3.1.1/mibs/"]
(or what the current version may be in the system). The
current directory and the
/priv/mibs/]]>
are always listed last in the include path.
-
The option imports, if present, specifies that
the IMPORT statement of the MIB shall be included in the
compiled mib.
-
The option module, if present, specifies the
name of a module which implements all instrumentation
functions for the MIB.
The name of all instrumentation
functions must be the same as the corresponding managed
object it implements.
-
The option module_identity, if present, specifies
that the info part of the MODULE-IDENTITY statement of the MIB
shall be included in the compiled mib.
-
The option module_compliance, if present, specifies
that the MODULE-COMPLIANCE statement of the MIB shall be included
(with a mib-entry record) in the compiled mib. The mib-entry record
of the module-compliance will contain reference and module
part(s) this info in the assocList field).
-
The option agent_capabilities, if present, specifies
that the AGENT-CAPABILITIES statement of the MIB shall be included
(with a mib-entry record) in the compiled mib. The mib-entry record
of the agent-capabilitie will contain reference and modules
part(s) this info in the assocList field).
-
The option no_defs, if present, specifies
that if a managed object does not have an instrumentation
function, the default instrumentation function should NOT
be used, instead this is reported as an error, and the
compilation aborts.
-
The option verbosity specifies the verbosity of
the SNMP mib compiler. I.e. if warning, info, log, debug
and trace messages shall be shown.
Default is silence.
Note that if the option warnings is true and the
option verbosity is silence, warning messages will
still be shown.
-
The option warnings specifies whether warning
messages should be shown.
Default is true.
-
The option warnings_as_errors, if present, specifies
whether warnings should be treated as errors.
The MIB compiler understands both SMIv1 and SMIv2 MIBs. It
uses the MODULE-IDENTITY statement to determine if the MIB is
version 1 or 2.
The MIB compiler can be invoked from the OS command line by
using the command erlc. erlc recognizes the
extension .mib, and invokes the SNMP MIB compiler for
files with that extension. The options db,
group_check, deprecated, description,
verbosity, imports and module_identity
have to be specified to erlc using the syntax
+term. See erlc(1) for details.