한국어 Solaris 사용 설명서

부록 A 이진 호환성 패키지

한국어 OpenWindows 2.x 또는 Solaris 1.x이나 SunOS 4.x 시스템에서 컴파일된 응용 프로그램의 이진 형식은 현재 한국어 Solaris 릴리스와 다릅니다. 여기에 포함되어 있는 이진 호환성 패키지(BCP)를 이용하면 이전의 응용프로그램을 재구성하지 않고도 현재 한국어 릴리스에서 실행할 수 있습니다.


주 –

다음과 같은 명령을 실행하려면 SUNWowbcp를 시스템 구성에 포함시켜야 합니다. 설치 방법은 시스템 관리자에게 문의하십시오.


OpenWindows V2 한국어 응용 프로그램이 입력 서버 상태 영역을 표시하지는 않지만, 다음의 BCP 명령은 재컴파일 하지 않고 이전 SunOS4.x, Solaris 1.x 및 한국어 OpenWindows 2.x 응용 프로그램의 컴파일된 이진 코드를 실행할 수 있습니다. 다음과 같이, 이 명령어는 이전의 이름(old_application_name)으로 응용프로그램을 호출하고 이전 버전의 특정 로켈 이름(oldlocale)을 사용하여 기본 로켈, 입력 언어 및 표시 언어를 설정합니다.


system% old_application_name -lc_basiclocaleoldlocale -lc_inputlang
    oldlocale -lc_displaylangoldlocale

다음 예제는 한국어 현재 Solaris 시스템에서 이전 버전 textedit 응용 프로그램의 컴파일된 이진 코드를 실행하는데 사용하는 명령입니다.


system% textedit -lc_displaylang korean -lc_basiclocale korean \
-lc_inputlang korean

한국어 Solaris 2.x 및 1.x 응용 프로그램이 서로 호환되지 않으므로 이들 사이에서 한국어 문자를 자르고 붙여 놓기 할 수 없습니다.

한국어 테스트 유틸리티

여기의 목록에 있는 유틸리티는 모두 지원되지만, 이 Solaris 버전의 경우 국제 언어 환경 설명서에서 설명한 XPG4 국제화 API를 사용하는 것이 좋습니다.

다음 표의 유틸리티는 한국 (KS C 5601) 국가 표준 문자 세트의 여러 가지 측면을 테스트합니다. 한국어 isksc를 제외하고, 또한 시험되는 문자가 국가 표준 문자 세트의 일부분인 것으로 가정합니다.

다음 표에 있는 함수의 인자는 WC, wchar_t에 있는 문자여야 합니다. 자세한 내용은 kctype(3x) 설명서 페이지를 참조하십시오.

표 A–1 한국어 문자 분류 기능

유틸리티 

설명 

isksc

KS C 5601 문자 세트에 있으면 참이 됩니다. 

iskroman

KS C 5636 문자 세트의 정의 대로 로마어 문자이면 참이 됩니다. 

iskromannum

KS C 5601 문자 세트의 특수 문자 로마어 숫자 기호이면 참이 됩니다.  

isksymbol

KS C 5601 문자 세트의 라틴 기호나 특수 문자이면 참이 됩니다. 

iskparen

KS C 5601 문자 세트의 오른쪽 괄호나 왼쪽 괄호이면 참이 됩니다. 

isklatin

KS C 5601 문자 세트의 라틴 문자이면 참이 됩니다. 

iskletter

KS C 5601 문자 세트의 한국어 모음이나 자음이면 참이 됩니다. 

iskline

KS C 5601 문자 세트의 명령 선 기호이면 참이 됩니다.  

iskunit

KS C 5601 문자 세트의 단위 문자이면 참이 됩니다. 

isksci

KS C 5601 문자 세트의 과학 기호이면 참이 됩니다.  

iskgen

KS C 5601 문자 세트의 그래픽 기호나 일반 기호이면 참이 됩니다. 

iskgreek

KS C 5601 문자 세트의 그리스 문자이면 참이 됩니다. 

iskrussian

KS C 5601 문자 세트의 러시아 문자이면 참이 됩니다.  

iskuser

해당 문자가 KS C 5601 문자 세트의 사용자 정의 영역에 있으면 참이 됩니다. 

iskhanja

KS C 5601 문자 세트에 있는 표의 문자이면 참이 됩니다. 

iskhangul

KS C 5601 문자 세트의 한글 표음 문자이면 참이 됩니다. 

iskkata

KS C 5601 문자 세트의 일본어 가타카나 문자이면 참이 됩니다. 

iskhira

KS C 5601 문자 세트의 일본어 히라가나 문자이면 참이 됩니다. 

아시아권 특정 유틸리티

여기에서는 넓은 문자 및 문자열 입력/출력, 문자 분류 기능과 아울러 한국어 문자 세트용 및 변환 기능에 대하여 설명합니다. 아시아판 Solaris 소프트웨어는 산업 표준에 따라 한국어 문자 코드를 다루는 넓은 문자 라이브러리를 실행합니다.

한국어에 종속된 루틴은 해당 C 컴파일러 옵션과 연결된 언어 특정 라이브러리에 존재합니다. 한국어 Solaris의 경우 libkle-lkle과 링크됩니다. 자세한 내용은 해당 설명서 페이지를 참조하십시오.

아시아판 Solaris 소프트웨어는 WC를 고정 너비 4바이트 코드로 정의합니다. WC는 ANSI C 데이터 유형 wchar_t를 사용하며, 이는 다음 예제에 보이는 것과 같이 Solaris 소프트웨어가 wchar.h에서 정의합니다.


typedef long wchar_h;

Solaris 소프트웨어에서 long은 4바이트입니다.

변환 유틸리티

여기에서 설명한 변환 유틸리티를 사용할 수 있으나 iconv()를 표준 기능으로 사용해야 합니다.

아시아판 Solaris 소프트웨어에는 다양한 변환 기능을 제공합니다.

일반 멀티바이트 변환 유틸리티를 사용하는 프로그램은 헤더 파일 widec.hwctype.h 헤더 파일을 포함해야 합니다. 한국어 Solaris 특정 루틴(iskxxx 등)은 ko/xctype.h에서 선언됩니다.

일반 멀티바이트 변환 유틸리티를 사용하는 프로그램에는 세 개의 헤더 파일이 포함되어야 합니다. wctype.h, widec.h,ko/xctype.h.

코드 세트 내의 변환

멀티바이트 변환 기능은 toupper()tolower()의 1바이트 변환 기능과 유사합니다. 이 기능은 넓은 문자를 다른 넓은 문자로 변환합니다. 변환 루틴에 대한 자세한 내용은 모든 로켈용 wconv(3) 매뉴얼 페이지와 한국어용 kconv(3) 매뉴얼 페이지를 참조하십시오.

한국어 문자 코드의 변환

다음 루틴은 KS C 5601 문자 세트에서 문자 기반 코드 변환을 수행합니다. 완성형 코드(또는 EUC 형식)와 조합형 코드(또는 팩형 코드) 간에 세트의 문자를 변환합니다. 이들 루틴을 사용하려면 라이브러리 kle가 반드시 C 컴파일러 옵션 -lkle을 사용하여 링크되어야 합니다. 자세한 내용은 kconv(3x) 매뉴얼 페이지를 참조하십시오.

표 A–2 한국어 코드 변환 기능

기능 

설명 

comptopack ()

완성형 코드의 문자를 KS C 5601-1987의 조합형(팩형) 코드로 변환합니다. 

packtocomp ()

조합형(팩형) 코드의 문자를 KS C 5601-1987의 완성형 코드로 변환합니다. 

wasuntojohap ()

완성형 코드의 문자를 KS C 5601-1992의 조합형(팩형) 코드로 변환합니다. 

packtocomp ()

KS C 5601-1992의 조합형(팩형) 코드 문자를 완성형 코드로 변환합니다.