T.R | Title | User | Personal Name | Date | Lines |
---|
17.1 | Building the Sample AM | TOOK::D_BLACK | Darryl Black | Fri Oct 06 1989 14:48 | 36 |
| 1. The "Access Module Programming" Manual suggests that you use
CMS,MMS and have a C compiler available to build an Access Module
but gives no information on how to proceed if you do not have these
tools. It seems that at least MMS is required to build the Sample
AM but the other tools would also be needed if you were creating
your own AM.
You don't need CMS or MMS to build the SAMPLE AM. The SAMPLE AM can be
built manually, i.e. by compiling (and assembling .MAR) all provided source
and linking using the option file provided. Note that the options file
expects that you insert your object/macro files into two libraries,
SAMPLE_OBJLIB.OLB and SAMPLE_MACROLIB.MLB.
2. Release note 1.9.4 points to SAMPLE_AM_OPTIONS.OPT and SAMPLE_
DESCRIP.MMS (the release notes have this file name spelled wrong,
there is no "t" in DESCRIP) for details on how to build the sample
AM from scratch. These are programs that are necessary to build
the AM but give absolutely no detail on 'HOW to build' the AM. The
'How to' information should be in a paragraph or chapter in the
AM Programming Guide.
Thanks, we should talk about how to build the Sample in the Guide.
3. I had to define the following logical in order to build the
SAMPLE_AM:
MCC$INCLUDE
Thanks, we should mention this in the Guide.
4. The include file STRDEF.H was missing from MCC$INCLUDE and had
to be found on another V5 operating system and copied before the
build would work.
The STRDEF.H file comes with the C compiler. Perhaps your installer decided
not to include this during the installation.
|
17.2 | Problems building/enrolling | COOKIE::SEAGLE | 44% of statistics are meaningless | Tue Jun 19 1990 18:36 | 30 |
| I was attempting to build (via MCC$SAMPLE_AM_AUTO_MAKE.COM) and enroll the
sample_am supplied with the DECmcc kit. One module has a problem, but the
print routine in MCC accvio's prior to printing it out. The output is:
$ mcc
DECmcc (T1.0.0)
MCC> enroll mcc$sample_am
%LIB-W-NOEOM, module does not contain end of module record
%LIB-W-NOEOM, module v
%SYSTEM-E-ACCVIO, access violation, reason mask=00, virtual address=0000000A, PC
=0000000A, PSL=0000000F
$
The only modules whose names begin with "v" are MCC$SAMPLE_AM_VALIDATE.C and
MCC$SAMPLE_AM_VECTOR.MAR, both of which are just as they came out of the kit.
I examined them anyway; they look good to me. Also, the auto make routine
completed without any errors/complaints.
Any ideas/hints as to what I am doing incorrectly? What should I look for to
track down this error?
Thanks,
Dave.
|
17.3 | Debugging ideas | TOOK::D_BLACK | Darryl Black | Wed Jun 20 1990 13:39 | 14 |
|
It would be useful to do a "$ set verify" prior to invoking the .COM to
find out what failed. Also, make certain that you are enrolling the
right executable--define the component specific logical prior to invoking
MCC.
$ DEF MCC$SAMPLE_AM disk$dua1:[testsample]mcc$sample_am.exe
Finally, the release notes contain information for building the sample.
Hope this helps,
Darryl
|
17.4 | | COOKIE::SEAGLE | 44% of statistics are meaningless | Wed Jun 20 1990 17:38 | 11 |
| RE: .3
Defining the component specific logical did the trick (and I found my
oversight in the manuals). However, before posting the original note I
tried copying the .EXE into the MCC area which, if I understood the
manual right, would obviate the need for the logical. Instead I blew
up during ENROLL with a different error. I don't understand; can
someone explain?
Dave.
|
17.5 | hints on enrolling | GOSTE::CALLANDER | | Wed Jun 20 1990 18:02 | 43 |
| There are a number of "things" that can cause an enroll to go
wrong. The simplist of these are every day things like insufficient
privileges or ACL errors. The other is that the MCC$* logicals are
incorrectly set.
The .EXE files should be located in the sys$sysroot:[syslib] directory,
and need to be installed to run. All image are installed as part
of the installation so simply placing an executable in the directory
will not allow it to run. To see what you have do the following:
$ DIR SYS$SYSROOT:[SYSLIB]name.EXE
$ INSTAL LIST SYS$SHARE:name
Verify that the directory and version information match your
expectations.
There are also four logicals that the MCC setup procedures define for
you. (In the EFT kit the _ is a $. These change in the EFT Update
kit.)
$ SHOW LOG MCC_*
<Your private definitions will probably be in your process table>
(LNM$SYSTEM_TABLE)
"MCC_COMMON" = "SYS$COMMON:[MCC]"
"MCC_SPECIFIC" = "SYS$SPECIFIC:[MCC]"
"MCC_SYSTEM" = "MCC_SPECIFIC"
= "MCC_COMMON"
"MCC_TDF" = "-4:00"
These logicals are used by the system for locating things like the
dispatch tables. If they are incorrectly set you can not do an
enrollment because the tables can't be found.
If you want more specific information try using the worksheets in
the back of the AM Guide or post the actual message that you received.
Hope this helps.
jill
|
17.6 | Management Modules belong in SYS$COMMON:[SYSLIB] | WAKEME::ROBERTS | Keith Roberts LKG2-2/N1 | Wed Sep 12 1990 12:43 | 14 |
| > The .EXE files should be located in the sys$sysroot:[syslib] directory,
> and need to be installed to run. All image are installed as part
> of the installation so simply placing an executable in the directory
> will not allow it to run. To see what you have do the following:
Management Modules should be copied to SYS$COMMON:[SYSLIB] .. if you use
SYS$SYSROOT:[SYSLIB], this defaults to SYS$SPECIFIC:[SYSLIB]. And, if you
are part of a Cluster, your file will not be (directly) accessible to the other
nodes in the cluster.
Don't forget to unprotect the file if you intend on other people to access
it too (WORLD:RWE)
/Keith
|