Loading...
Select Version
&pagelevel(3)&pagelevel
Es wird empfohlen, das Hauptprogramm mit STDLIB=*DYNAMIC
zu binden (Standardwert) und den EDT mit ILCS-Flag indicator.ilcs_environment = 1
(Standardwert) zu rufen. Die folgende Prozedur compiliert und bindet C-Hauptprogramme, die als BEISPIEL1.C
, BEISPIEL2.C
, ... in der Bibliothek EDT.BEISPIELE
abgelegt sind.
Das erzeugte Programm, die Compiler-Listen und die Diagnose-Ausgabe werden ebenfalls in dieser Bibliothek abgelegt.
/SET-PROCEDURE-OPTIONS INPUT-FORMAT=FREE-RECORD-LENGTH,/ DATA-ESCAPE-CHAR=STD /BEGIN-PARAMETER-DECLARATION / DECLARE-PARAMETER NAME=NR / DECLARE-PARAMETER NAME=LIB,INITIAL-VALUE=C'EDT.BEISPIELE' /END-PARAMETER-DECLARATION /START-CPLUS-COMPILER //MODIFY-SOURCE-PROP LANGUAGE=*C //MODIFY-RUNTIME-PROPERTIES PARAMETER-PROMPTING=*NO //MODIFY-INCLUDE-LIBRARIES USER-INCLUDE-LIBRARY=// $.SYSLIB.EDT.170 ------------------------------ (1) //MODIFY-DIAGNOSTIC-PROPERTIES OUTPUT=*LIBRARY-ELEMENT(// LIB=&LIB,ELEM=*STD-ELEMENT()),// MIN-MSG-WEIGHT=*NOTE //MODIFY-LISTING-PROPERTIES OUTPUT=*LIBRARY-ELEMENT(-
// LIB=&LIB,ELEM=*STD-ELEMENT()),SOURCE=*YES() //COMPILE SOURCE=*LIB-ELEM(LIB=&LIB,ELEM=BEISPIEL&NR..C),// MODULE-OUTPUT=*LIB-ELEM(LIB=&LIB,ELEM=BEISPIEL&NR) //MOD-BIND-PROP INCLUDE=(*LIB(LIB=&LIB,ELEM=BEISPIEL&NR),- ---------- (2) // *LIB(LIB=$.SYSLNK.EDT.170,ELEM=IEDTGLE)),// RUNTIME-LANG=*C,STDLIB=*DYNAMIC --------------------------------- (3) //BIND OUTPUT=*LIB(LIB=&LIB,ELEM=BSP&NR.C) --------------------------- (4) //END /EXIT-PROCEDUR
Erläuterungen
(1) | Es wird angenommen, dass die SYSLIB.EDT.170 unter der Default-Userid installiert ist. Der C-Compiler benötigt diese Bibliothek, um die Header-Files der IEDTGLE- Schnittstelle zu finden. |
(2) | Das Benutzerprogramm wird mit dem Modul IEDTGLE aus der SYSLNK.EDT.170 zusammengebunden. IEDTGLE lokalisiert mittels IMON die EDT-Bibliotheken und lädt seinerseits den EDT dynamisch nach, bzw. konnektiert sich an das EDT-Subsystem. |
(3) | Der Adapter für das C-Laufzeitsystem wird vom Compiler automatisch eingebunden, wenn STDLIB=*DYNAMIC spezifiziert wird. |
(4) | Das erzeugte Programm kann anschließend mit /START-EXECUTABLE-PROGRAM (E=BSPxC,L=EDT.BEISPIELE ) gestartet werden (x = 1,2,.. ). |
Das ILCS-Flag hat nur dann eine Bedeutung, wenn vom EDT Anwenderroutinen geladen und aufgerufen werden sollen (siehe die folgenden Abschnitte).