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

Conference bulova::decw_jan-89_to_nov-90

Title:DECWINDOWS 26-JAN-89 to 29-NOV-90
Notice:See 1639.0 for VMS V5.3 kit; 2043.0 for 5.4 IFT kit
Moderator:STAR::VATNE
Created:Mon Oct 30 1989
Last Modified:Mon Dec 31 1990
Last Successful Update:Fri Jun 06 1997
Number of topics:3726
Total number of notes:19516

488.0. "LIB$FIND_IMAGE_SYMBOL and still DWT$ undefines" by TOOLS::HOCHULI () Tue Mar 28 1989 10:48

    We are using LIB$FIND_IMAGE_SYMBOL to load the DECwindows and XLIB
    symbols we reference directly in our DECwindows interface.  However, we
    are still getting LINK-I-UDFSYM messages  for symbols we do not
    reference directly but that are referenced as external in the
    DECW$DWTWIDGETDEF.R32 and DECW$XLIBDEF.R32 BLISS require files.  Is
    there a way around this?

T.RTitleUserPersonal
Name
DateLines
488.1QUARK::LIONELThe dream is aliveTue Mar 28 1989 14:593
What are the symbols?
	Steve

488.2Reply to .-1 undefined symbols with LIB$FIND_IMAGETOOLS::HOCHULIWed Mar 29 1989 11:0211
    When we link without DECW$DWTLIBSHR and DECW$XLIBSHR using
    LIB$FIND_IMAGE_SYMBOL to load the DWT$, X$ and XT$ symbols we actually
    reference we get 700+ undefines we don't reference but that are
    referenced in the R32 BLISS require files supplied by DECwindows. 
    Examples are APPLICATIONSHELLCLASSREC, DWT$CLIPBOARD_LOCK,
    X$SET_FUNCTION, XT$POPUP.  We got LINK-W-USEUNDEF for the symbols we
    referenced but forgot to load from LIB$FIND_IMAGE_SYMBOL but we've
    cleaned them all up now.  Is there a way to turn these messages off
    in the linker?
    

488.3fool itSTAR::BRANDENBERGIntelligence - just a good party trick?Wed Mar 29 1989 11:117
    
    I don't know of a way to suppress the messages in LINK or to prevent
    BLISS from generating references in REQUIRE files (I didn't know it
    created any, actually).  You might use the SYMBOL option to force a
    meaningless resolution of the symbols or create an object with the
    necessary global symbols.  It is ugly, but....

488.4JHEREG::TANNENBAUMTPU DeveloperWed Mar 29 1989 13:577
I assume that you're trying to create an application which will work in both
the character cell and DECwindows worlds (or UIS).  TPU faced the same problem.
We chose to write a separate screen updater which we image activate which is
linked against the DECwindows libraries.

	- Barry

488.5Go for complete isolationDECWIN::FISHERBurns Fisher 381-1466, ZKO3-4/W23Fri Mar 31 1989 16:2119
I was just going to suggest what Barry said...I think you are much better
off isolating ALL the dependencies in a dynamically loadable file than to
try to find figure out exactly what the dependencies are and then try to
make magic macros that redefine calls to call through a dynamically
constructed jump table, etc etc.

Note that doing what you are doing is likely to cause two copies of the
sharable image to be activated.  This is because LIB$FIND_IMAGE_SYMBOL
uses a search tree to find out whether it has already activated a sharable
image.   I suspect that if you, for example, dynamically activated both
the toolkit and Xlib that you would find that the toolkit would probably
activate a second copy (or at least a second mapping) of Xlib.  The
likelyhood of "probably" depends on whether LIB$FIND_IMAGE_SYMBOL notices
that images that it activates also activate other images.  I don't know for
sure, but I doubt it, since it is only a library routine, after all; it
should not have that much intimate knowledge of the internals.

Burns