[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

17.0. "Problems building the SAMPLE_AM" by HAMRAD::DONADT () Wed Sep 27 1989 16:01

    Following are comments from my experience building the SAMPLE_AM.
    I have made some comments on how to improve the documentation as
    well as noting things required for the build but missing.
    
    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.
    
    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.
    
    3. I had to define the following logical in order to build the
    SAMPLE_AM:
    		MCC$INCLUDE
    
    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.
    
T.RTitleUserPersonal
Name
DateLines
17.1Building the Sample AMTOOK::D_BLACKDarryl BlackFri Oct 06 1989 14:4836
    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.2Problems building/enrollingCOOKIE::SEAGLE44% of statistics are meaninglessTue Jun 19 1990 18:3630
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.3Debugging ideasTOOK::D_BLACKDarryl BlackWed Jun 20 1990 13:3914
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.4COOKIE::SEAGLE44% of statistics are meaninglessWed Jun 20 1990 17:3811
    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.5hints on enrollingGOSTE::CALLANDERWed Jun 20 1990 18:0243
    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.6Management Modules belong in SYS$COMMON:[SYSLIB]WAKEME::ROBERTSKeith Roberts LKG2-2/N1Wed Sep 12 1990 12:4314
>    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