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

Conference helix::vaxeln

Title:VAXELN
Notice:Support - 2.*; Kits - 3.*
Moderator:HELIX::MIANOLO
Created:Fri Feb 08 1991
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:770
Total number of notes:2721

768.0. "Multi defined errors with ELN$PSHR and CRTLOBJECT ?" by AUBER::COSTEUX (Le Plat Pays qui est le mien...) Mon Apr 28 1997 12:36

    A customer is trying to use the CLOCK_GETTIME routine and as noted in a
    Stars example I suggested him the following Compile and Link commands
    lines:
    
    $ CC/DEB/NOOPT 'p1 + ELN$:VAXELNC/LIB
    $ LINK/DEB/NOSYSLIB 'p1' + ELN$:CRTLSHARE/LIB+ -
     ELN$:PSXSHARE/LIB/INCLUDE = (ELN$PSHR) + ELN$:RTL/LIB
    
    For other aspect he links his program with also CRTLOBJECT and gets
    multi defined error on (as example) MEMSHR, MEMCMP, MEMSET (all in
    CMSC) and also ELN$PASCAL$EXIT_HANDLER in module PASCALMSC.
    
    Can somebody help ? I did not support ELN for several years and I'm a
    little bit lost ..........
    Seems that the multi definitions occur because we link togethere the 
    modules ELN$PSHR and CRTLOBJECT
    
    Thanks for help.
    
    Regards,
    
    Jean-Pierre
T.RTitleUserPersonal
Name
DateLines
768.1Can't link POSIX app against CRTLOBJECTZYDECO::BODARealtime Expertise CenterMon Apr 28 1997 13:2914
Hi Jean-Pierre,

You are correct.  That's against the rules.  
As a reference, check section 2.1.2 of the VAXELN Guide to Using POSIX:

	"Unlike tradtional VAXELN programs, POSIX programs cannot be linked 
         against the object library CRTLOBJECT."

Also, I may have misunderstood your note, but you don't want to link a program
against both CRTLSHARE *and* CRTLOBJECT.

Regards,

Alan
768.2Clash alert.ZYDECO::BODARealtime Expertise CenterMon Apr 28 1997 13:314
Alright Mike!  We must be on the same wavelength, down to quoting
the same text!

/atb
768.3HELIX::MIANOMy parents think I'm in collegeMon Apr 28 1997 13:321
    I deleted mine. It was too spooky.
768.4ZYDECO::BODARealtime Expertise CenterMon Apr 28 1997 13:405
Doubly spooky.  I could have sworn that
I saw a reply from you as I hit the "next unseen". 
Then it *disappeared* like a ghost :-o

/atb
768.5Here are some comments.AUBER::COSTEUXLe Plat Pays qui est le mien...Tue Apr 29 1997 06:548
    Thanks all.
    The customer needs to link with CRTLOBJECT because his application
    calls INIT and Mount/Dismount devices routines included in this
    library. He also calls the Posix CLOCK_GETTIME routine. So is the
    reason why he gets these errors.
    Is there a solution?
    
    Jean-Pierre
768.6HELIX::MIANOMy parents think I'm in collegeTue Apr 29 1997 11:4814
>    The customer needs to link with CRTLOBJECT because his application
>    calls INIT and Mount/Dismount devices routines included in this
>    library. 
    
    Hmmm, I don't think any of these would be in CRTLOBJECT.

    The example I'm using with clock_gettime() links correctly with 
    psxshare, rtlshare and rtl. However, this may not work in all cases.
    You may need crtlshare sometime.
    
    I wonder if the /INCLUDE feature of the linker might help them avoid
    multiple symbols. There's a whole section on linking in the System
    Development Guide. There's also a whole book on linking in the VMS doc
    set.