Looking at a C program here that makes LDAP calls, and that is called by assembler, the JCL to bind it looks like this:
//LKED EXEC PGM=IEWBLINK,REGION=2M,PARM='MAP,RENT,CALL(YES), // DYNAM(DLL)' //SYSPRINT DD SYSOUT=* //SYSLMOD DD DSN=our.output.pdse,DISP=SHR //SYSLIB DD DISP=SHR,DSN=CEE.SCEELKED // DD DISP=SHR,DSN=GLD.SGLDHDRC // DD DISP=SHR,DSN=GLD.SGLDEXPC //Q1 DD PATH='/usr/lpp/ldap/lib/' //Q2 DD PATH='/usr/lpp/ldapclient/lib/' //Q3 DD PATH='/usr/lpp/ldapclient/include/' //OBJ DD DISP=SHR,DSN=our.input.object.lib //GLD DD DISP=SHR,DSN=GLD.SGLDEXPC Side files //SYSLIN DD * INCLUDE OBJ(ourobj) INCLUDE OBJ(CEEUOPT) Useful only if you provide your own CEEUOPT INCLUDE GLD(GLDCLDPX) LIBRARY Q1,Q2,Q3 ENTRY CEESTART NAME ourname(R) /* I hesitate to contribute to the proliferation of "I don't know how it works but we've been using it forever" JCL decks, and indeed I'm not sure what of all this is actually necessary, but it does work here. In particular I don't understand the mix of GLD. datasets and the /usr/lpp/ldap directories. You might try it, and if it works then start stripping it down until it breaks. Tony H. On Wed, 15 May 2024 at 11:38, Yareni Hernandez Villa < [email protected]> wrote: > Hello, > > I'm trying to have an Assembler program call a C program that makes LDAP > calls (though the API provided by Tivoli Directory Server). > I am able to have the Assembler program call an ordinary C program without > LDAP calls, and a C program by itself make LDAP calls, but when I try to > put it all together (Assembler module calling C module calling LDAP), the > link step for the assembler program gives me a RC = 12 and says: > > IEW2456E 9207 SYMBOL ldap_init UNRESOLVED. MEMBER COULD NOT BE INCLUDED > FROM THE DESIGNATED CALL LIBRARY. > > The C program that makes the LDAP calls did not get that link error. The > assembler program itself isn’t making LDAP calls, but rather calling that C > program. > > The Assembler program is Language Environment conforming. > > I have the datasets: GLD.SGLDEXPC and GLD.SGLDHDRC in my JCL for my C > program compile and bind and added SYS1.SIEALNKE to the Link step of my > Assembler JCL. Has anyone had success doing something similar or have any > advice? I currently have a case open with IBM, but they haven’t been able > to resolve yet. > > Thanks, > Yareni Hernandez Villa > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
