From: MERC::"uunet!WKUVX1.BITNET!MacroMan" 10-FEB-1993 01:25:15.28 To: MACRO32@WKUVX1.BITNET CC: Subj: Re: Problems with sharable library I wrote >> G'day, >> I'm posting this for one of our developers. >> >> He has a problem with a program he is developing that links against a sharable >> library. >> In his words >> >> | The program I am writing fails to run with the MDLC$LIB library (see below for >> |the error messages produced and the LINK commands). It appears that the >> |MDLC$LIB library is meant to be mapped at location 819712 (ie. 000C8200 hex), >> |but when I looked at the map file, this location appeared to be free. >> |Have you seen this problem before, and do you know of a workaround, Thanks to all who replied. The answer we found was to Create a new object module which is linked at the next address above the MDLC$LIB library. The purpose is top act as a "guard" page" to forces all other sharable images to be mapped above it, and hench above MDLC$LIB as well. Thus the memory overlap problem is overcome. The source for the guard page, and the link command is below #module MOSCAD_GUARD_PAGE static unsigned long guard_page_memory = 0' LINK was > |LINK/DEBUG/MAP MOSCAD_CHECK_TIMES + ODDLSRC:CATAGORY + SYS$INPUT/OPT > | USER:[ITN.LIB]ITNLIB.OLB > | CLUSTER=DDR,512,,MDLC$DEVICE:[MTS_THREAD]DDR_SPC.OBJ > | CLUSTER=APP,819712,,MDLC$LIB/SHARE > | SYS$SHARE:VAXCRTL.EXE/SHARE is now LINK/DEBUG/MAP MOSCAD_CHECK_TIMES + ODDLSRC:CATAGORY + SYS$INPUT/OPT USER:[ITN.LIB]ITNLIB.OLB CLUSTER=DDR,512,,MDLC$DEVICE:[MTS_THREAD]DDR_SPC.OBJ CLUSTER=APP,819712,,MDLC$LIB/SHARE CLUSTER=GUARD,965120,,MOSCAD_GUARD_PAGE.OBJ SYS$SHARE:VAXCRTL.EXE/SHARE >Jonas Lindholm Internet: jlh@seb.se asks: > Why do you want the sharable images to be mapped at a specific address? Good question, The answer is we don't, we are stuck using VENDOR supplied routines. (and vendors who don't know). Regards Richard Farnsworth Internet: richard@mits.com.au PSI Mail: psi%0505238730004::richard Alternate: richard%mits.com.au@ucsvc.ucs.unimelb.edu.au The King sent all his men To find a rhyme for W But when they couldn't he said I'm sorry to trouble you