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

Conference dssdev::fmsnotes

Title: VAX FMS Notes
Notice:See note 675.* for info on FMS V2.4
Moderator:DRAGN::BOURQUARD
Created:Tue Feb 04 1986
Last Modified:Wed May 21 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:1211
Total number of notes:4308

1204.0. "FDV$VECTOR porting problem - VAX to Alpha" by HYLNDR::MCNALLY () Wed Mar 26 1997 19:43


	We are currently doing a port from VAX to Alpha, and we are having 
problems with the module FDV$VECTOR on the Alpha. I am not familiar with
where this module exists or what it is being used for.  I've referenced
the FMS manuals and release notes and found no reference to it.  

	Can someone explain what/where this module is and whether it has
a different name on Alpha (FDV$LINKAGE??)?  We are seeing a reference to 
FDV$LINKAGE on the Alpha but we don't really know if this replaces the
FDV$VECTOR module used on the VAX.

	I have included some of the build procedure of the system we are
porting to display what type of errors are occurring.

			Thanks,
			Cheryl McNally
			Enterprise Systems Engineering


{beginning of build file removed}
.
.
.
$ !
$ ! Make the Form Library Vector File if applicable
$ !
$ ON SEVERE_ERROR THEN GOTO DELETE_FMS
$ IF F$LOGICAL("FORM_LIBRARY").EQS."" THEN GOTO PURGE_OUT
$ FMS/VECTOR FORM_LIBRARY/OUTPUT=FORMS.OBJ
$ FMS/OBJECT FORM_LIBRARY/OUTPUT=MEMS.OBJ
$ LIBRARY/REPLACE LNK$LIBRARY FORMS.OBJ /LOG
%LIBRAR-S-INSERTED, module FDV$LINKAGE inserted in PRODDISK19:[PROD.LIB.ACTION]OBJECTS.OLB;1
$ LIBRARY/REPLACE LNK$LIBRARY MEMS.OBJ /LOG
%LIBRAR-S-INSERTED, module FDV$MEMRES inserted in PRODDISK19:[PROD.LIB.ACTION]OBJECTS.OLB;1
.
.
.
$    OPT_COMPILE:
$       COBFILE = F$SEARCH(FILE_SPEC)
$       OBJFILE = F$EXTRACT(0,F$LOCATE(";",COBFILE)-4,COBFILE)
$!      OBJFILE = F$EXTRACT(F$LOCATE("]",OBJFILE)+1,80,OBJFILE)
$       IF COBFILE.EQS."" THEN GOTO NEXT_DIRECTORY2
$       SAY "Linking based on OPTIONS File: " + OBJFILE
Linking based on OPTIONS File: PRODDISK19:[PROD.SOURCE.ACTION]TABLE_MAINT_MENU
$       LINK /NOMAP/EXE=OPT_EXE PRODDISK19:[PROD.SOURCE.ACTION]
TABLE_MAINT_MENU
lnk$library/include=table_maint_menu
dqc_lib:objects/library/include=dqc_get_user_profile
lnk$library/include=fdv$vector
lnk$library/library/include=action_table
DMQ$ENTRYRTL/SHAREABLE
C_COMPILER_RTL_SHARE/SHAREABLE
%LINK-W-NOSUCHMOD, module FDV$VECTOR not found<CR><LF>  in
   library PRODDISK19:[PROD.LIB.ACTION]OBJECTS.OLB;1
.
.
.
$ !
$ !Link screens
 LINK/NOTRACE/EXE=SNA_EXE:SNA_PORT_MAINT  -
                      LNK$LIBRARY/INCLUDE=(SNA_PORT_MAINT,
FDV$MEMRES,FDV$VECTOR)
%LINK-W-NOSUCHMOD, module FDV$VECTOR not found
	in library PRODDISK19:[PROD.LIB.SNA]SNA.OLB;1
$ !
$ EXIT


T.RTitleUserPersonal
Name
DateLines
1204.1DRAGN::BOURQUARDThis is not hereThu Mar 27 1997 13:0826
Hi Cheryl,

Bear with me while I dust off some very old brain cells...

On VAX, the mechanism that FMS used to access Action Routines and shared forms
was a transfer vector (basically, a .TRANSFER macro directive).  All of these
transfer vectors were kept in a module called FDV$VECTOR.  In your application 
you've put the FMS Vectors (FORMS.OBJ) into a library.  When you do a 
LIBRARY/LIST you won't see a reference to FORMS, you'll see a reference to
FDV$VECTOR.  Therefore, when you need to link your application against this you
have to reference FDV$VECTOR within the library.

	lnk$library/include=fdv$vector

On Alpha, the .TRANSFER directive isn't there.  The FMS/Vector command now
creates a symbol vector.  I don't remember exactly how this works but I think
it creates an external symbol reference to the Action Routine or shared form.
The module name is going to be different but I can't remember what it's called.
If you do a LIBRARY/LIST you should see a different reference for that object
module.  Also, you could do an ANALYZE/OBJECT or a DUMP to get the name.

If you still need help let me know and I'll do some more digging for you.  I
don't work on FMS anymore but I think I can still look at the sources if
I need to.

Dan