HP Systems Insight Manager 6.3 User Guide

mcompile
The mcompile tool verifies the syntax of all MIBs to be loaded into the system. mcompile resolves
all MIB dependencies and, where necessary, converts SNMP v2 MIBs into v1 format for loading
into the Systems Insight Manager database. mcompile is located in the <BASE>\lbin directory
and should be run from the <BASE>\mibs directory. mcompile looks for all MIB files in the
<BASE>\mibs directory by default so any MIB that you intend to register should be copied to the
<BASE>\mibs directory. While mcompile does provide some capability to specify a different
directory to search for MIBs, as a best practice HP strongly recommends you place all MIBs in the
<BASE>\mibs directory. Usage for mcompile is as follows:
mcompile [-d <dirspec>] <mibfile></
Use of the -d switch is not necessary when you have copied all MIBs, including dependency MIBs,
to the <BASE>\mibs directory and execute mcompile from the <BASE>\mibs directory. The -d
switch specifies which directory contains the MIB files to be compiled into Systems Insight Manager.
The directory path must be specified as relative to the full path or relative to the <BASE> directory.
As output, mcompile produces a CFG file and save it to the <BASE>\mibs directory. This file has
the same name as the source MIB except it has the .cfg suffix. In the typical usage mentioned
above, the resulting output file would be test.cfg. Running mcompile several times against
the same source MIB produces multiple revisions of the CFG with the latest version retaining the
.cfg extension. CFG files are stripped-down versions of the original source MIBs where all
comments have been removed, all imports from other MIBs have been resolved and substituted as
needed, and the compiler has converted v2 syntax to v1 where appropriate.
When compiling MIBs with dependencies, the dependent MIB must be located in the same directory
as the target MIB and must follow a certain naming convention, typically MIBMODULE.MIB. An
example follows using excerpts from the CPQFCA MIB:
CPQFCA-MIB DEFINITIONS ::= BEGIN
IMPORTS
compaq
FROM CPQHOST-MIB
enterprises
FROM RFC1155-SMI
DisplayString
FROM RFC1213-MIB
OBJECT-TYPE
FROM RFC-1212
TRAP-TYPE
FROM RFC-1215
cpqSsChassisName
FROM CPQSTSYS-MIB
mcompile searched for compaq by opening the file CPQHOST.MIB and mcompile looks for
cpqSsChassisName in CPQSTSYS.MIB. The other imports are resolved automatically when
mcompile runs from the <BASE>\mibs directory. HP provides versions of the RFC 1212, 1213,
and 1215 MIBs for automatic import during compilation. mcompile automatically resolves and
imports internally from RFC1155.
Another example of imports during compilation comes from the BLADETYPE2-TRAP.MIB used
by the HP ProLiant BL p-Class GbE2 Interconnect Switch:
BLADETYPE2-TRAP-MIB DEFINITIONS ::= BEGIN
IMPORTS
TRAP-TYPE
FROM RFC-1215
sysName
MIB management tools 139