로컬 포함 프리프로세서를
사용하면 PL/I 지시문 %INCLUDE 또는 COBOL COPY문 이외의 포함 지시문을 사용하여
외부 소스 파일을 프로그램에 통합할 수 있습니다.
시작하기 전에
로컬 특성 그룹을 작성하고 해당 그룹을 로컬
COBOL 또는 PL/I 소스 파일 또는 로컬 프로젝트에 연관시킵니다.제한 사항: 로컬 포함 전처리기는 macOS 클라이언트에서 지원되지 않습니다.
프리프로세서가 복사 및
포함 파일을 찾을 때 검색하는 파일 확장자를 정의하도록
포함 프리프로세스의 컨텐츠 유형 연결을 설정할 수 있습니다. 컨텐츠 유형 연결 정의에 대한
지시사항은 관련 항목을 참조하십시오. 포함 프리프로세서에 대한 컨텐츠 유형 연관을
정의하는 경우 제품은 허용 가능한 파일 확장자 목록(예: EXT("cpy","inc","mac"))을
포함하는 포함 프리프로세서에 EXT( ) 매개변수를
전달합니다.
태스크 정보
로컬 포함 프리프로세서는 제품을 설치할 때 언팩되는
com.ibm.systemz.preprocessor.include
플러그인에 있습니다. 로컬 포함 전처리기는 개별 COBOL 또는 PL/I 프로그램 또는 하나 이상의 COBOL 또는 PL/I 프로그램이 포함된 로컬 z/OS® 프로젝트와 함께 사용할 수 있습니다. 또한 독립적으로 사용하거나 다중 프리프로세서 빌드 조작의 일부로 사용할 수도 있습니다.
- 포함 프리프로세서가 컴파일 이전에 호출되는 유일한 프리프로세서인 경우,
입력 파일은 구문 검사 또는 종속성
표시 오퍼레이션에 선택된
COBOL 또는 PL/I 프로그램입니다.
- 포함 프로세서가 프로젝트 빌드에 대해 호출되는 경우,
프로젝트의 각 COBOL 또는 PL/I 프로그램이 처리된 후 컴파일됩니다. 이 경우의 입력 파일은 처리할 현재 COBOL 또는 PL/I
소스입니다.
- 포함 프리프로세서가 다중 프리프로세서 오퍼레이션의 일부로
호출되고 이전 프리프로세서 이후에 시작되는 경우,
포함 프리프로세서에 대한 입력 파일은 이전 활성 프리프로세서의
출력 파일입니다. 이 파일은 이전 활성 프리프로세서의 프리프로세서 출력 파일 이름 입력 필드에 나열된
파일입니다. 다중 전처리기 작업 설정에 대한 자세한 내용은 다중 로컬 전처리기 사용하기를 참고하세요.
프로시저
로컬 포함 프리프로세서를 사용하려면 다음을 수행하십시오.
- 자원 또는 프로젝트와 연관된 특성 그룹에 대한 특성 그룹 편집기를
열고 PL/I 페이지를 탐색하십시오.
- 왼쪽에 있는 목록에서 로컬 프리프로세서 를 클릭하여 로컬 프리프로세서 페이지를 여십시오.
- 새로 작성을 클릭하십시오.
- 로컬 프리프로세서 페이지의 프리프로세서 옵션 섹션에 있는 필드를 완료하십시오.
- 프리프로세서 설명
- Include preprocessor와 같은 설명을 입력하십시오.
- 프리프로세서 이름
- 포함 프리프로세서의 이름을 입력하십시오. 기본값은 ${bundle:com.ibm.systemz.preprocessor.include}/bin/operatingSystem/PPINCL01, 여기서 operatingSystem macos 또는 win32. ${bundle} 변수는 언팩된 번들 또는 플러그인을 가리킵니다. 이 변수는
포함 프리프로세서를 찾는 데 사용됩니다.
참고: V14.1.4 또는 이전 버전에서 생성된 속성 그룹을 사용하는 경우, 설치 디렉터리를 가리키도록 ` ${INSTDIR} ` 변수를 사용하는 전처리기 이름은 여전히 유효합니다. 버전 14.1.5의 경우 PPINCL01 프리프로세서는
제품 설치 경로 및 com.ibm.systemz.preprocessor.include 플러그인 모두에
포함됩니다.
- 프리프로세서 인수
- 포함 프리프로세서는 다음 인수를 사용할 수 있습니다.
- TRACE(ON|OFF) 워크스테이션에서 이 옵션은
TPF 원격 콘솔에 출력을 더 제공합니다. 390 시스템에서 이 옵션은 JES 출력을 더 제공합니다. 이 출력은 IBM® 기술 지원 담당자가 사용하기 위한 것으로, 원치 않는 출력의 양을 늘리고 성능을 저하시킬 수 있으므로 일반 개발 과정에서는 사용해서는 안 됩니다. 문제점 판별을 위해 IBM 기술 지원 담당자에게 문의해야 하는 경우 이 출력을 서신으로 복사할 수 있습니다. 이 옵션의 기본값은 TRACE(OFF)입니다. 옵션을 지정하지 않으면
기본값이 사용됩니다.
- FORMAT(ON|OFF) 워크스테이션과
390 시스템에서, 이 옵션은 오류 메시지에 대해 생성된 XML의 가독성을
변경합니다. FORMAT(ON)은 XML 파일을 읽기 쉽게
명령문 테이블이 여섯 개 열로 작성되도록 합니다. 이 옵션을 설정하면
오퍼레이션이 더 오래 걸리므로 XML 파일 구문 분석의 성능이 약간
저하될 수 있습니다. 이 옵션의 기본값은 FORMAT(OFF)입니다. 옵션을 지정하지 않으면
기본값이 사용됩니다.
- NOCOPY(ON|OFF) 소스에 COPY REPLACE 명령문이 포함된 경우 포함 프리프로세서는 COPY REPLACE 명령문 처리를 지원하지 않습니다. 프리프로세서는
사본 파일에서 문자열을 바꾸지도 않고, COPY REPLACE 명령문에 지정된 멤버 이름을 찾지도 않습니다. 이 문제점을 예방하려면
NOCOPY(ON) 프리프로세서 옵션을 사용하십시오. 이 옵션은 -INC
및 ++INCLUDE 명령문이 처리되게 하지만,
COPY 명령문 및 %INCLUDE 명령문은 포함 프리프로세서에 의해 처리되지 않습니다. 프리프로세서 이후 컴파일러가 이러한 명령문을
처리합니다.
소스에 멤버 이름을 따옴표나 어포스트로피로 묶은
COPY 명령문이 포함된 경우, 포함 프리프로세서는
이러한 명령문 처리를 지원하지 않습니다. 이 문제점을 예방하려면
NOCOPY(ON) 프리프로세서 옵션을 사용하십시오. 이 옵션은 -INC
및 ++INCLUDE 명령문이 처리되게 하지만,
COPY 명령문 및 %INCLUDE 명령문은 포함 프리프로세서에 의해 처리되지 않습니다. 프리프로세서 이후 컴파일러가 이러한 명령문을
처리합니다.
- CMT(ON|OFF) CMT(ON)을 지정하고
확장 소스 파일을 열면 포함 프리프로세서는
원본
COPY 또는 INCLUDE문에 주석을 배치하고,
소스 파일에 카피북 또는 포함 파일을 배치한 후,
카피북 또는 포함 파일의 끝을 표시하는 다른 주석을
배치합니다. 확장 카피북이나 포함 파일 및 주석은 다음 예제와
유사합니다.* COPY ABC
01 XYZ PIC X
01 FIRST PIC 9
- 확장 소스 표시에 대한 자세한 정보는 관련 항목을
참조하십시오.
제한사항: 기본적으로 이 필드는 비어 있습니다. 포함 프리프로세서에 대한 컨텐츠 유형을 정의하고 이 필드에
프리프로세서 인수를 지정한 경우, 프리프로세서가 EXT( ) 인수(예:
EXT("cpy","inc"," ")를 사용하여 인식할 파일 확장자를 수동으로
추가해야 합니다.
- 프리프로세서 출력 파일 이름
- 프리프로세서 출력에 사용할 파일 이름을 지정하십시오. 이 옵션을
생략하면 출력 파일 이름이 생성됩니다.
- 오류 피드백 지원
- 프리프로세서에 의해 생성된 오류를 로그하려면 이 선택란을 선택하십시오. 이 선택란을 선택하면 오류 피드백 XML 파일 이름 필드를 사용할 수 있습니다. 이 옵션은 기본적으로 사용 가능합니다.
- 오류 피드백 XML 파일 이름
- 오류 피드백에 생성할 XML 파일의 불완전한 이름을
지정하십시오. 이 옵션을 생략하면
오류 피드백 XML 파일 이름이 생성됩니다.
- 환경 변수(명령문 설정)
- 프리프로세서에 전달할 환경 변수를 지정하십시오. 이 필드는 SYSLIB에 대한 값을 포함하지만, 포함 파일이 있는 폴더를
가리키도록 값을 변경해야 합니다. SYSLIB 환경 변수의 경로 길이는 4K로 제한됩니다. 4K를 초과하는 길이에 대해서는 오류 메시지가 발행되지 않지만 4K보다 큰 SYSLIB문은 포함 프리프로세서 프로그램에서 구문 검사 조작이 비정상적으로 종료될 수 있습니다.