정보
-
업무명 : 오프라인 리눅스 (Linux) 환경에서 kwgrib2 설치
-
작성자 : 이상호
-
작성일 : 2020-07-02
-
설 명 :
-
수정이력 :
내용
[개요]
-
안녕하세요? 기상 연구 및 웹 개발을 담당하고 있는 해솔입니다.
-
대한민국 기상청의 주요모델자료는 GRIB2 데이터 형식으로 보전 및 제공되고 있다. GRIB2는 자료의 종류, 정보 등이 담기며 일반적인 압축파일과 유사하게 패키지화되어 있는 형태이다.
-
*.zip 형태의 압축파일 안에 담긴 파일들을 추출하려면 압축 해제 프로그램을 이용한 압축해제 과정이 필요하다. 이와 유사하게 GRIB2 형식의 데이터도 일반적으로 많이 사용되는 ASCII 코드나 이진 파일로 변환해주는 프로그램이 필요하다.
-
GRIB2 파일을 압축해제 해주는 프로그램은 매우 다양하며 그 중 대표적으로 wgrib2 혹은 gribapi가 주로 사용되고 있다. wgrib2는 미국에서 개발된 소프트웨어로서 미국의 현업 및 연구기관에서 생산되는 변수들을 추출하는데 사용되고 있다.
-
GRIB 파일 내에 새로운 변수 혹은 새로운 연직 정보가 추가될 경우 wgrib2의 수정이 필요하며 이에 따라 기상청에서는 새롭게 수정된 kwgrib2를 사용하고 있다.
-
이 프로그램은 기상청 국가기상슈퍼컴퓨터센터 홈페이지에서 소스를 제공하고 있으며 사용자들은 원본소스를 제공 받아 리눅스 컴퓨터에 설치하여 사용하여야 한다.
-
오늘 포스팅에서는 오프라인 리눅스 (Linux) 환경에서 kwgrib2 설치를 소개해 드리고자 합니다.
[특징]
-
대한민국 기상청의 수치 자료를 처리하기 위해 필요하며 이 프로그램은 이러한 목적을 달성하기 위해서 고안된 소프트웨어
[기능]
-
kwgrib2 설치
[활용 자료]
- 통합본
[자료 처리 방안 및 활용 분석 기법]
-
없음
[사용법]
-
오프라인 리눅스 환경 구축
-
설치 결과 확인
[사용 OS]
-
Linux (CentOS v7.3)
-
VMware Workstation Pro v15.5
[사용 언어]
- Shell Script (Bash)
설치
[오프라인 환경]
-
온라인 (인터넷 가능)과 달리 직접 패키지 다운로드하여 컴파일 및 실행해야 합니다.
-
[1 단계] kwgrib2 업로드 및 압축 해제
-
해당 디렉터리 (/SYSTEM/LINUX/kwgrib2)를 생성하고 kwgrib2.tar 파일을 업로드합니다.
-
tar -xvf kwgrib2.tar를 통해 압축 해제합니다.
-
[root linux@/SYSTEM/LINUX/kwgrib2]# pwd
/SYSTEM/LINUX/kwgrib2
[root linux@/SYSTEM/LINUX/kwgrib2]# ls
kwgrib2.tar
[root linux@/SYSTEM/LINUX/kwgrib2]# tar -xvf kwgrib2.tar
kwgrib2/
kwgrib2/jasper-1.900.1.tar.gz
kwgrib2/README.icc
kwgrib2/README.Mac
kwgrib2/libpng-1.2.44.tar.gz
kwgrib2/tar_all
kwgrib2/INSTALLING
kwgrib2/zlib-1.2.5.tar.gz
kwgrib2/README.ipolates
kwgrib2/README.gcc
kwgrib2/README.gctpc
kwgrib2/netcdf.tar.gz
kwgrib2/README
kwgrib2/README.pgi
kwgrib2/README.EUMETSAT
kwgrib2/Developement.doc
kwgrib2/gctpc/
kwgrib2/gctpc/doc/
kwgrib2/gctpc/doc/appendixC.txt
kwgrib2/gctpc/doc/inv_init.ps
kwgrib2/gctpc/doc/appendixB.txt
kwgrib2/gctpc/doc/error_codes.txt
kwgrib2/gctpc/doc/overview.ps
kwgrib2/gctpc/doc/xxxinv.ps
kwgrib2/gctpc/doc/gctp.ps
kwgrib2/gctpc/doc/README
kwgrib2/gctpc/doc/for_init.ps
kwgrib2/gctpc/doc/reference.txt
kwgrib2/gctpc/doc/xxxfor.ps
kwgrib2/gctpc/doc/appendixA.txt
kwgrib2/gctpc/source/
kwgrib2/gctpc/source/nad83sp
kwgrib2/gctpc/source/sterfor.c
kwgrib2/gctpc/source/obleqinv.c
kwgrib2/gctpc/source/robfor.c
kwgrib2/gctpc/source/cproj.h
kwgrib2/gctpc/source/somfor.c
kwgrib2/gctpc/source/nad1927.dat
kwgrib2/gctpc/source/goodfor.c
kwgrib2/gctpc/source/alconinv.c
kwgrib2/gctpc/source/lamazfor.c
kwgrib2/gctpc/source/equiinv.c
kwgrib2/gctpc/source/polyinv.c
kwgrib2/gctpc/source/sphdz.c
kwgrib2/gctpc/source/lamazinv.c
kwgrib2/gctpc/source/sininv.c
kwgrib2/gctpc/source/stplninv.c
kwgrib2/gctpc/source/lamccinv.c
kwgrib2/gctpc/source/azimfor.c
kwgrib2/gctpc/source/nad27sp
kwgrib2/gctpc/source/orthinv.c
kwgrib2/gctpc/source/stplnfor.c
kwgrib2/gctpc/source/wivfor.c
kwgrib2/gctpc/source/hamfor.c
kwgrib2/gctpc/source/orthfor.c
kwgrib2/gctpc/source/millfor.c
kwgrib2/gctpc/source/obleqfor.c
kwgrib2/gctpc/source/polyfor.c
kwgrib2/gctpc/source/wviifor.c
kwgrib2/gctpc/source/millinv.c
kwgrib2/gctpc/source/sominv.c
kwgrib2/gctpc/source/inv_init.c
kwgrib2/gctpc/source/alberfor.c
kwgrib2/gctpc/source/Makefile
kwgrib2/gctpc/source/README
kwgrib2/gctpc/source/br_gctp.c
kwgrib2/gctpc/source/alberinv.c
kwgrib2/gctpc/source/tminv.c
kwgrib2/gctpc/source/cproj.c
kwgrib2/gctpc/source/tmfor.c
kwgrib2/gctpc/source/untfz.c
kwgrib2/gctpc/source/haminv.c
kwgrib2/gctpc/source/gnominv.c
kwgrib2/gctpc/source/for_init.c
kwgrib2/gctpc/source/psfor.c
kwgrib2/gctpc/source/sterinv.c
kwgrib2/gctpc/source/merinv.c
kwgrib2/gctpc/source/utmfor.c
kwgrib2/gctpc/source/alconfor.c
kwgrib2/gctpc/source/molwinv.c
kwgrib2/gctpc/source/omerinv.c
kwgrib2/gctpc/source/makefile.gctpc
kwgrib2/gctpc/source/gvnspinv.c
kwgrib2/gctpc/source/equifor.c
kwgrib2/gctpc/source/make.com
kwgrib2/gctpc/source/paksz.c
kwgrib2/gctpc/source/sinfor.c
kwgrib2/gctpc/source/vandgfor.c
kwgrib2/gctpc/source/report.c
kwgrib2/gctpc/source/molwfor.c
kwgrib2/gctpc/source/goodinv.c
kwgrib2/gctpc/source/wviiinv.c
kwgrib2/gctpc/source/vandginv.c
kwgrib2/gctpc/source/robinv.c
kwgrib2/gctpc/source/nad1983.dat
kwgrib2/gctpc/source/merfor.c
kwgrib2/gctpc/source/psinv.c
kwgrib2/gctpc/source/spload.f
kwgrib2/gctpc/source/wivinv.c
kwgrib2/gctpc/source/omerfor.c
kwgrib2/gctpc/source/aziminv.c
kwgrib2/gctpc/source/proj.h
kwgrib2/gctpc/source/gnomfor.c
kwgrib2/gctpc/source/eqconinv.c
kwgrib2/gctpc/source/imolwinv.c
kwgrib2/gctpc/source/gvnspfor.c
kwgrib2/gctpc/source/eqconfor.c
kwgrib2/gctpc/source/lamccfor.c
kwgrib2/gctpc/source/gctp.c
kwgrib2/gctpc/source/imolwfor.c
kwgrib2/gctpc/source/utminv.c
kwgrib2/gctpc/test/
kwgrib2/gctpc/test/proj/
kwgrib2/gctpc/test/proj/ps/
kwgrib2/gctpc/test/proj/ps/parm6e
kwgrib2/gctpc/test/proj/ps/ps_test
kwgrib2/gctpc/test/proj/ps/data6c
kwgrib2/gctpc/test/proj/ps/parm6d
kwgrib2/gctpc/test/proj/ps/data6b
kwgrib2/gctpc/test/proj/ps/data6d
kwgrib2/gctpc/test/proj/ps/parm6a
kwgrib2/gctpc/test/proj/ps/parm6b
kwgrib2/gctpc/test/proj/ps/data6a
kwgrib2/gctpc/test/proj/ps/parm6
kwgrib2/gctpc/test/proj/ps/data6
kwgrib2/gctpc/test/proj/ps/parm6c
kwgrib2/gctpc/test/proj/ps/data6e
kwgrib2/gctpc/test/proj/wagiv/
kwgrib2/gctpc/test/proj/wagiv/data28a
kwgrib2/gctpc/test/proj/wagiv/data28
kwgrib2/gctpc/test/proj/wagiv/parm28a
kwgrib2/gctpc/test/proj/wagiv/data28b
kwgrib2/gctpc/test/proj/wagiv/wagiv_test
kwgrib2/gctpc/test/proj/wagiv/parm28
kwgrib2/gctpc/test/proj/wagiv/parm28b
kwgrib2/gctpc/test/proj/wagiv/data28c
kwgrib2/gctpc/test/proj/wagiv/parm28c
kwgrib2/gctpc/test/proj/polyc/
kwgrib2/gctpc/test/proj/polyc/data7a
kwgrib2/gctpc/test/proj/polyc/polyc_test
kwgrib2/gctpc/test/proj/polyc/parm7d
kwgrib2/gctpc/test/proj/polyc/data7d
kwgrib2/gctpc/test/proj/polyc/parm7c
kwgrib2/gctpc/test/proj/polyc/data7b
kwgrib2/gctpc/test/proj/polyc/data7c
kwgrib2/gctpc/test/proj/polyc/parm7a
kwgrib2/gctpc/test/proj/polyc/parm7b
kwgrib2/gctpc/test/proj/wagvii/
kwgrib2/gctpc/test/proj/wagvii/data29
kwgrib2/gctpc/test/proj/wagvii/parm29
kwgrib2/gctpc/test/proj/wagvii/parm29a
kwgrib2/gctpc/test/proj/wagvii/parm29b
kwgrib2/gctpc/test/proj/wagvii/wagvii_test
kwgrib2/gctpc/test/proj/wagvii/data29b
kwgrib2/gctpc/test/proj/wagvii/data29c
kwgrib2/gctpc/test/proj/wagvii/parm29c
kwgrib2/gctpc/test/proj/wagvii/data29a
kwgrib2/gctpc/test/proj/azmeqd/
kwgrib2/gctpc/test/proj/azmeqd/data12b
kwgrib2/gctpc/test/proj/azmeqd/parm12a
kwgrib2/gctpc/test/proj/azmeqd/data12a
kwgrib2/gctpc/test/proj/azmeqd/parm12b
kwgrib2/gctpc/test/proj/azmeqd/data12
kwgrib2/gctpc/test/proj/azmeqd/azmeqd_test
kwgrib2/gctpc/test/proj/azmeqd/parm12c
kwgrib2/gctpc/test/proj/azmeqd/data12c
kwgrib2/gctpc/test/proj/azmeqd/parm12
kwgrib2/gctpc/test/proj/lamcc/
kwgrib2/gctpc/test/proj/lamcc/parm4c
kwgrib2/gctpc/test/proj/lamcc/parm4b
kwgrib2/gctpc/test/proj/lamcc/data4a
kwgrib2/gctpc/test/proj/lamcc/data4
kwgrib2/gctpc/test/proj/lamcc/README
kwgrib2/gctpc/test/proj/lamcc/data4b
kwgrib2/gctpc/test/proj/lamcc/lamcc_test
kwgrib2/gctpc/test/proj/lamcc/parm4
kwgrib2/gctpc/test/proj/lamcc/parm4a
kwgrib2/gctpc/test/proj/lamcc/data4c
kwgrib2/gctpc/test/proj/snsoid/
kwgrib2/gctpc/test/proj/snsoid/parm16c
kwgrib2/gctpc/test/proj/snsoid/data16d
kwgrib2/gctpc/test/proj/snsoid/data16
kwgrib2/gctpc/test/proj/snsoid/parm16
kwgrib2/gctpc/test/proj/snsoid/parm16a
kwgrib2/gctpc/test/proj/snsoid/data16a
kwgrib2/gctpc/test/proj/snsoid/snsoid_test
kwgrib2/gctpc/test/proj/snsoid/parm16d
kwgrib2/gctpc/test/proj/snsoid/data16c
kwgrib2/gctpc/test/proj/stereo/
kwgrib2/gctpc/test/proj/stereo/parm10
kwgrib2/gctpc/test/proj/stereo/data10
kwgrib2/gctpc/test/proj/stereo/parm10a
kwgrib2/gctpc/test/proj/stereo/stereo_test
kwgrib2/gctpc/test/proj/stereo/data10b
kwgrib2/gctpc/test/proj/stereo/parm10b
kwgrib2/gctpc/test/proj/stereo/data10a
kwgrib2/gctpc/test/proj/hammer/
kwgrib2/gctpc/test/proj/hammer/data27b
kwgrib2/gctpc/test/proj/hammer/parm27a
kwgrib2/gctpc/test/proj/hammer/parm27b
kwgrib2/gctpc/test/proj/hammer/hammer_test
kwgrib2/gctpc/test/proj/hammer/data27a
kwgrib2/gctpc/test/proj/som/
kwgrib2/gctpc/test/proj/som/parm22a
kwgrib2/gctpc/test/proj/som/parm22
kwgrib2/gctpc/test/proj/som/som_test
kwgrib2/gctpc/test/proj/som/parm22d
kwgrib2/gctpc/test/proj/som/data22a
kwgrib2/gctpc/test/proj/som/data22d
kwgrib2/gctpc/test/proj/som/data22
kwgrib2/gctpc/test/proj/som/README
kwgrib2/gctpc/test/proj/som/parm22e
kwgrib2/gctpc/test/proj/som/data22c
kwgrib2/gctpc/test/proj/som/data22e
kwgrib2/gctpc/test/proj/som/parm22c
kwgrib2/gctpc/test/proj/lamaz/
kwgrib2/gctpc/test/proj/lamaz/parm11b
kwgrib2/gctpc/test/proj/lamaz/parm11a
kwgrib2/gctpc/test/proj/lamaz/lamaz_test
kwgrib2/gctpc/test/proj/lamaz/parm11c
kwgrib2/gctpc/test/proj/lamaz/data11b
kwgrib2/gctpc/test/proj/lamaz/parm11
kwgrib2/gctpc/test/proj/lamaz/data11a
kwgrib2/gctpc/test/proj/lamaz/README
kwgrib2/gctpc/test/proj/lamaz/data11
kwgrib2/gctpc/test/proj/lamaz/data11c
kwgrib2/gctpc/test/proj/vgrint/
kwgrib2/gctpc/test/proj/vgrint/data19c
kwgrib2/gctpc/test/proj/vgrint/parm19c
kwgrib2/gctpc/test/proj/vgrint/data19d
kwgrib2/gctpc/test/proj/vgrint/vgrint_test
kwgrib2/gctpc/test/proj/vgrint/parm19d
kwgrib2/gctpc/test/proj/vgrint/data19
kwgrib2/gctpc/test/proj/vgrint/parm19a
kwgrib2/gctpc/test/proj/vgrint/data19b
kwgrib2/gctpc/test/proj/vgrint/data19a
kwgrib2/gctpc/test/proj/vgrint/parm19b
kwgrib2/gctpc/test/proj/vgrint/parm19
kwgrib2/gctpc/test/proj/robin/
kwgrib2/gctpc/test/proj/robin/parm21d
kwgrib2/gctpc/test/proj/robin/data21a
kwgrib2/gctpc/test/proj/robin/data21d
kwgrib2/gctpc/test/proj/robin/robin_test
kwgrib2/gctpc/test/proj/robin/README
kwgrib2/gctpc/test/proj/robin/data21c
kwgrib2/gctpc/test/proj/robin/parm21a
kwgrib2/gctpc/test/proj/robin/data21
kwgrib2/gctpc/test/proj/robin/parm21
kwgrib2/gctpc/test/proj/robin/data21b
kwgrib2/gctpc/test/proj/robin/parm21c
kwgrib2/gctpc/test/proj/robin/parm21b
kwgrib2/gctpc/test/proj/mercat/
kwgrib2/gctpc/test/proj/mercat/parm5a
kwgrib2/gctpc/test/proj/mercat/parm5c
kwgrib2/gctpc/test/proj/mercat/mercat_test
kwgrib2/gctpc/test/proj/mercat/data5a
kwgrib2/gctpc/test/proj/mercat/parm5b
kwgrib2/gctpc/test/proj/mercat/data5c
kwgrib2/gctpc/test/proj/mercat/parm5
kwgrib2/gctpc/test/proj/mercat/data5b
kwgrib2/gctpc/test/proj/mercat/data5
kwgrib2/gctpc/test/proj/moll/
kwgrib2/gctpc/test/proj/moll/parm25b
kwgrib2/gctpc/test/proj/moll/data25c
kwgrib2/gctpc/test/proj/moll/data25b
kwgrib2/gctpc/test/proj/moll/parm25c
kwgrib2/gctpc/test/proj/moll/moll_test
kwgrib2/gctpc/test/proj/moll/data25a
kwgrib2/gctpc/test/proj/moll/parm25a
kwgrib2/gctpc/test/proj/eqrect/
kwgrib2/gctpc/test/proj/eqrect/parm17
kwgrib2/gctpc/test/proj/eqrect/data17a
kwgrib2/gctpc/test/proj/eqrect/parm17d
kwgrib2/gctpc/test/proj/eqrect/parm17a
kwgrib2/gctpc/test/proj/eqrect/data17c
kwgrib2/gctpc/test/proj/eqrect/data17d
kwgrib2/gctpc/test/proj/eqrect/parm17b
kwgrib2/gctpc/test/proj/eqrect/parm17c
kwgrib2/gctpc/test/proj/eqrect/eqrect_test
kwgrib2/gctpc/test/proj/eqrect/data17b
kwgrib2/gctpc/test/proj/eqrect/data17
kwgrib2/gctpc/test/proj/imoll/
kwgrib2/gctpc/test/proj/imoll/parm26a
kwgrib2/gctpc/test/proj/imoll/data26c
kwgrib2/gctpc/test/proj/imoll/data26a
kwgrib2/gctpc/test/proj/imoll/imoll_test
kwgrib2/gctpc/test/proj/imoll/parm26b
kwgrib2/gctpc/test/proj/imoll/data26b
kwgrib2/gctpc/test/proj/imoll/parm26c
kwgrib2/gctpc/test/proj/albers/
kwgrib2/gctpc/test/proj/albers/parm3
kwgrib2/gctpc/test/proj/albers/albers_test
kwgrib2/gctpc/test/proj/albers/data3
kwgrib2/gctpc/test/proj/albers/data3a
kwgrib2/gctpc/test/proj/albers/parm3a
kwgrib2/gctpc/test/proj/albers/data3b
kwgrib2/gctpc/test/proj/albers/parm3b
kwgrib2/gctpc/test/proj/hom/
kwgrib2/gctpc/test/proj/hom/parm20b
kwgrib2/gctpc/test/proj/hom/hom_test
kwgrib2/gctpc/test/proj/hom/data20
kwgrib2/gctpc/test/proj/hom/data20b
kwgrib2/gctpc/test/proj/hom/data20d
kwgrib2/gctpc/test/proj/hom/parm20
kwgrib2/gctpc/test/proj/hom/data20c
kwgrib2/gctpc/test/proj/hom/parm20d
kwgrib2/gctpc/test/proj/hom/parm20a
kwgrib2/gctpc/test/proj/hom/parm20c
kwgrib2/gctpc/test/proj/hom/data20a
kwgrib2/gctpc/test/proj/Proj.name
kwgrib2/gctpc/test/proj/equidc/
kwgrib2/gctpc/test/proj/equidc/parm8c
kwgrib2/gctpc/test/proj/equidc/parm8d
kwgrib2/gctpc/test/proj/equidc/equidc_test
kwgrib2/gctpc/test/proj/equidc/parm8b
kwgrib2/gctpc/test/proj/equidc/parm8
kwgrib2/gctpc/test/proj/equidc/data8b
kwgrib2/gctpc/test/proj/equidc/data8c
kwgrib2/gctpc/test/proj/equidc/data8
kwgrib2/gctpc/test/proj/equidc/data8d
kwgrib2/gctpc/test/proj/good/
kwgrib2/gctpc/test/proj/good/data24c
kwgrib2/gctpc/test/proj/good/data24a
kwgrib2/gctpc/test/proj/good/good_test
kwgrib2/gctpc/test/proj/good/parm24b
kwgrib2/gctpc/test/proj/good/parm24a
kwgrib2/gctpc/test/proj/good/parm24c
kwgrib2/gctpc/test/proj/good/data24b
kwgrib2/gctpc/test/proj/utm/
kwgrib2/gctpc/test/proj/utm/parm1n13
kwgrib2/gctpc/test/proj/utm/utm_test
kwgrib2/gctpc/test/proj/utm/data1n13
kwgrib2/gctpc/test/proj/utm/data1p13
kwgrib2/gctpc/test/proj/utm/README
kwgrib2/gctpc/test/proj/utm/data1p31
kwgrib2/gctpc/test/proj/utm/parm1p31
kwgrib2/gctpc/test/proj/utm/parm1p13
kwgrib2/gctpc/test/proj/utm/data1n31
kwgrib2/gctpc/test/proj/utm/parm1n31
kwgrib2/gctpc/test/proj/miller/
kwgrib2/gctpc/test/proj/miller/parm18b
kwgrib2/gctpc/test/proj/miller/data18b
kwgrib2/gctpc/test/proj/miller/parm18d
kwgrib2/gctpc/test/proj/miller/parm18a
kwgrib2/gctpc/test/proj/miller/data18c
kwgrib2/gctpc/test/proj/miller/parm18
kwgrib2/gctpc/test/proj/miller/data18
kwgrib2/gctpc/test/proj/miller/data18d
kwgrib2/gctpc/test/proj/miller/data19a
kwgrib2/gctpc/test/proj/miller/miller_test
kwgrib2/gctpc/test/proj/miller/parm18c
kwgrib2/gctpc/test/proj/ortho/
kwgrib2/gctpc/test/proj/ortho/parm14b
kwgrib2/gctpc/test/proj/ortho/parm14d
kwgrib2/gctpc/test/proj/ortho/data14a
kwgrib2/gctpc/test/proj/ortho/ortho_test
kwgrib2/gctpc/test/proj/ortho/parm14c
kwgrib2/gctpc/test/proj/ortho/README
kwgrib2/gctpc/test/proj/ortho/parm14
kwgrib2/gctpc/test/proj/ortho/data14d
kwgrib2/gctpc/test/proj/ortho/data14b
kwgrib2/gctpc/test/proj/ortho/data14
kwgrib2/gctpc/test/proj/ortho/data14c
kwgrib2/gctpc/test/proj/ortho/parm14a
kwgrib2/gctpc/test/proj/gnomon/
kwgrib2/gctpc/test/proj/gnomon/parm13b
kwgrib2/gctpc/test/proj/gnomon/parm13c
kwgrib2/gctpc/test/proj/gnomon/data13d
kwgrib2/gctpc/test/proj/gnomon/parm13d
kwgrib2/gctpc/test/proj/gnomon/data13a
kwgrib2/gctpc/test/proj/gnomon/data13c
kwgrib2/gctpc/test/proj/gnomon/parm13
kwgrib2/gctpc/test/proj/gnomon/gnomon_test
kwgrib2/gctpc/test/proj/gnomon/parm13a
kwgrib2/gctpc/test/proj/gnomon/data13
kwgrib2/gctpc/test/proj/gnomon/data13b
kwgrib2/gctpc/test/proj/alaska/
kwgrib2/gctpc/test/proj/alaska/parm23a
kwgrib2/gctpc/test/proj/alaska/parm23b
kwgrib2/gctpc/test/proj/alaska/data23a
kwgrib2/gctpc/test/proj/alaska/parm23
kwgrib2/gctpc/test/proj/alaska/alaska_test
kwgrib2/gctpc/test/proj/alaska/data23b
kwgrib2/gctpc/test/proj/alaska/data23
kwgrib2/gctpc/test/proj/gvnsp/
kwgrib2/gctpc/test/proj/gvnsp/parm15a
kwgrib2/gctpc/test/proj/gvnsp/data15d
kwgrib2/gctpc/test/proj/gvnsp/parm15c
kwgrib2/gctpc/test/proj/gvnsp/data15b
kwgrib2/gctpc/test/proj/gvnsp/gvnsp_test
kwgrib2/gctpc/test/proj/gvnsp/parm15
kwgrib2/gctpc/test/proj/gvnsp/data15
kwgrib2/gctpc/test/proj/gvnsp/parm15b
kwgrib2/gctpc/test/proj/gvnsp/data15c
kwgrib2/gctpc/test/proj/gvnsp/parm15d
kwgrib2/gctpc/test/proj/gvnsp/data15a
kwgrib2/gctpc/test/proj/obleqa/
kwgrib2/gctpc/test/proj/obleqa/data30a
kwgrib2/gctpc/test/proj/obleqa/parm30b
kwgrib2/gctpc/test/proj/obleqa/parm30a
kwgrib2/gctpc/test/proj/obleqa/parm30c
kwgrib2/gctpc/test/proj/obleqa/data30b
kwgrib2/gctpc/test/proj/obleqa/data30c
kwgrib2/gctpc/test/proj/obleqa/obleqa_test
kwgrib2/gctpc/test/proj/spcs/
kwgrib2/gctpc/test/proj/spcs/parm21703
kwgrib2/gctpc/test/proj/spcs/data1703
kwgrib2/gctpc/test/proj/spcs/data5001
kwgrib2/gctpc/test/proj/spcs/data0101
kwgrib2/gctpc/test/proj/spcs/parm21301
kwgrib2/gctpc/test/proj/spcs/data4400
kwgrib2/gctpc/test/proj/spcs/parm20503
kwgrib2/gctpc/test/proj/spcs/parm22701
kwgrib2/gctpc/test/proj/spcs/data3003
kwgrib2/gctpc/test/proj/spcs/parm22900
kwgrib2/gctpc/test/proj/spcs/data4803
kwgrib2/gctpc/test/proj/spcs/parm25001
kwgrib2/gctpc/test/proj/spcs/data3601
kwgrib2/gctpc/test/proj/spcs/data0503
kwgrib2/gctpc/test/proj/spcs/parm23800
kwgrib2/gctpc/test/proj/spcs/data1301
kwgrib2/gctpc/test/proj/spcs/parm23003
kwgrib2/gctpc/test/proj/spcs/README
kwgrib2/gctpc/test/proj/spcs/data3800
kwgrib2/gctpc/test/proj/spcs/parm23601
kwgrib2/gctpc/test/proj/spcs/spcs_test
kwgrib2/gctpc/test/proj/spcs/parm20101
kwgrib2/gctpc/test/proj/spcs/parm25104
kwgrib2/gctpc/test/proj/spcs/data2900
kwgrib2/gctpc/test/proj/spcs/parm25009
kwgrib2/gctpc/test/proj/spcs/data4002
kwgrib2/gctpc/test/proj/spcs/parm22201
kwgrib2/gctpc/test/proj/spcs/parm24400
kwgrib2/gctpc/test/proj/spcs/data5104
kwgrib2/gctpc/test/proj/spcs/parm25400
kwgrib2/gctpc/test/proj/spcs/data2701
kwgrib2/gctpc/test/proj/spcs/data5009
kwgrib2/gctpc/test/proj/spcs/data5400
kwgrib2/gctpc/test/proj/spcs/data2201
kwgrib2/gctpc/test/proj/spcs/parm24803
kwgrib2/gctpc/test/proj/spcs/parm24002
kwgrib2/gctpc/test/proj/tm/
kwgrib2/gctpc/test/proj/tm/data9e
kwgrib2/gctpc/test/proj/tm/parm9
kwgrib2/gctpc/test/proj/tm/data9
kwgrib2/gctpc/test/proj/tm/parm9b
kwgrib2/gctpc/test/proj/tm/data9a
kwgrib2/gctpc/test/proj/tm/parm9a
kwgrib2/gctpc/test/proj/tm/data9b
kwgrib2/gctpc/test/proj/tm/parm9e
kwgrib2/gctpc/test/proj/tm/parm9c
kwgrib2/gctpc/test/proj/tm/tm_test
kwgrib2/gctpc/test/proj/tm/parm9d
kwgrib2/gctpc/test/proj/tm/data9d
kwgrib2/gctpc/test/proj/tm/data9c
kwgrib2/gctpc/test/README
kwgrib2/gctpc/test/test_proj/
kwgrib2/gctpc/test/test_proj/testproj.c
kwgrib2/gctpc/test/test_proj/Makefile
kwgrib2/gctpc/README
kwgrib2/gctpc/announce.txt
kwgrib2/wgrib2/
kwgrib2/wgrib2/CodeTable_3.11.dat
kwgrib2/wgrib2/gribtab.c
kwgrib2/wgrib2/fnlist.c
kwgrib2/wgrib2/help.c
kwgrib2/wgrib2/CodeTable.c
kwgrib2/wgrib2/Mysql.c
kwgrib2/wgrib2/cname.c
kwgrib2/wgrib2/CodeTable_3.8.dat
kwgrib2/wgrib2/CodeTable_4.5_kma.dat
kwgrib2/wgrib2/parse_loop.c
kwgrib2/wgrib2/wgrib2.c
kwgrib2/wgrib2/jma_msm_g2nc.table
kwgrib2/wgrib2/Grid_def.c
kwgrib2/wgrib2/UDF.c
kwgrib2/wgrib2/addtime.c
kwgrib2/wgrib2/Fix_CFSv2_fcst.c
kwgrib2/wgrib2/geo.c
kwgrib2/wgrib2/Inv.c
kwgrib2/wgrib2/rd_grib2_msg.c
kwgrib2/wgrib2/Grib_out_irr.c
kwgrib2/wgrib2/Netcdf_sup.c
kwgrib2/wgrib2/LICENSE-wgrib2
kwgrib2/wgrib2/Fix_ncep.c
kwgrib2/wgrib2/unpk_complex.c
kwgrib2/wgrib2/crc32.c
kwgrib2/wgrib2/Sec0.c
kwgrib2/wgrib2/intpower.c
kwgrib2/wgrib2/ncep_grids.c
kwgrib2/wgrib2/Sec3.c
kwgrib2/wgrib2/Fix_ncep_4.c
kwgrib2/wgrib2/CodeTable_4.11.dat
kwgrib2/wgrib2/swap_buffer.c
kwgrib2/wgrib2/Set_val.c
kwgrib2/wgrib2/Dump.c
kwgrib2/wgrib2/Csv.c
kwgrib2/wgrib2/makefile_local.1
kwgrib2/wgrib2/CodeTable_4.5_ncep.dat
kwgrib2/wgrib2/CodeTable_4.235.dat
kwgrib2/wgrib2/seekgrib2.c
kwgrib2/wgrib2/ffopen.c
kwgrib2/wgrib2/unpk_0.c
kwgrib2/wgrib2/CodeTable_4.9_need_to_edit.dat
kwgrib2/wgrib2/misc_gribtab.dat
kwgrib2/wgrib2/space_view2ij.c
kwgrib2/wgrib2/For.c
kwgrib2/wgrib2/Spectral_bands.c
kwgrib2/wgrib2/LICENSE-netcdf
kwgrib2/wgrib2/hacking.txt
kwgrib2/wgrib2/sec3_grids.c
kwgrib2/wgrib2/Range.c
kwgrib2/wgrib2/If_rec.c
kwgrib2/wgrib2/reading_grib.txt
kwgrib2/wgrib2/fnlist.h
kwgrib2/wgrib2/CodeTable_5.1.dat
kwgrib2/wgrib2/Mod_grib.c
kwgrib2/wgrib2/Config.c
kwgrib2/wgrib2/grb2.h
kwgrib2/wgrib2/Prob.c
kwgrib2/wgrib2/Fcst_ave.c
kwgrib2/wgrib2/wgrib2.h
kwgrib2/wgrib2/LICENSE-jasper
kwgrib2/wgrib2/makefile_local.3
kwgrib2/wgrib2/CodeTable_4.0.dat
kwgrib2/wgrib2/missing.c
kwgrib2/wgrib2/interactive.txt
kwgrib2/wgrib2/units.c
kwgrib2/wgrib2/copy.c
kwgrib2/wgrib2/Waves.c
kwgrib2/wgrib2/Set_ts_dates.c
kwgrib2/wgrib2/API
kwgrib2/wgrib2/unpk.c
kwgrib2/wgrib2/Import.c
kwgrib2/wgrib2/File.c
kwgrib2/wgrib2/CodeTable_0.0.dat
kwgrib2/wgrib2/development.txt
kwgrib2/wgrib2/FlagTable.c
kwgrib2/wgrib2/Introduction.txt
kwgrib2/wgrib2/prod_def_temp_size.c
kwgrib2/wgrib2/Latlon.c
kwgrib2/wgrib2/NCEP_local_levels_test.h
kwgrib2/wgrib2/Unix_time.c
kwgrib2/wgrib2/ieee2flt.c
kwgrib2/wgrib2/Code_Values.c
kwgrib2/wgrib2/differences.txt
kwgrib2/wgrib2/ieee2flt_nan.c
kwgrib2/wgrib2/space_view.c
kwgrib2/wgrib2/CodeTable_1.4.dat
kwgrib2/wgrib2/Inv_no.c
kwgrib2/wgrib2/CodeTable_4.212.dat
kwgrib2/wgrib2/unpk_run_length.c
kwgrib2/wgrib2/CodeTable_3.1.dat
kwgrib2/wgrib2/Bbox.c
kwgrib2/wgrib2/UDF.txt
kwgrib2/wgrib2/Alias.c
kwgrib2/wgrib2/VerfTime.c
kwgrib2/wgrib2/simple_pk.c
kwgrib2/wgrib2/Tigge.c
kwgrib2/wgrib2/gctpc.txt
kwgrib2/wgrib2/function.sh
kwgrib2/wgrib2/Match.c
kwgrib2/wgrib2/Checksum.c
kwgrib2/wgrib2/wgrib2nc.h
kwgrib2/wgrib2/Set_pdt.c
kwgrib2/wgrib2/New_grid.c
kwgrib2/wgrib2/NCEP_norm.c
kwgrib2/wgrib2/CodeTable_3.2.dat
kwgrib2/wgrib2/Changes_netcdf
kwgrib2/wgrib2/Set_byte.c
kwgrib2/wgrib2/CodeTable_4.91.dat
kwgrib2/wgrib2/Cress_lola.c
kwgrib2/wgrib2/LICENSE-libpng
kwgrib2/wgrib2/WxText.c
kwgrib2/wgrib2/makefile_local.2
kwgrib2/wgrib2/test_sec.c
kwgrib2/wgrib2/int8.c
kwgrib2/wgrib2/Scan.c
kwgrib2/wgrib2/Precision.c
kwgrib2/wgrib2/README
kwgrib2/wgrib2/Set_sec_size.c
kwgrib2/wgrib2/Misc.c
kwgrib2/wgrib2/Earth.c
kwgrib2/wgrib2/Sec4.c
kwgrib2/wgrib2/gctpc_ll2xy.c
kwgrib2/wgrib2/complex_pk.c
kwgrib2/wgrib2/LICENSE-hdf
kwgrib2/wgrib2/Undefine.c
kwgrib2/wgrib2/CodeTable_3.21.dat
kwgrib2/wgrib2/Set_ensm_derived_fcst.c
kwgrib2/wgrib2/CodeTable_4.5_ncep_exit.dat
kwgrib2/wgrib2/CodeTable_5.0.dat
kwgrib2/wgrib2/bitstream.c
kwgrib2/wgrib2/tigge_gribtab.dat
kwgrib2/wgrib2/CodeTable_4.9.dat
kwgrib2/wgrib2/makefile_local
kwgrib2/wgrib2/CodeTable_4.230.dat
kwgrib2/wgrib2/Macro.c
kwgrib2/wgrib2/Sec5.c
kwgrib2/wgrib2/CodeTable_4.4.dat
kwgrib2/wgrib2/Level.c
kwgrib2/wgrib2/jpeg_pk.c
kwgrib2/wgrib2/NEW_types
kwgrib2/wgrib2/makefile
kwgrib2/wgrib2/RPN.c
kwgrib2/wgrib2/Wind_speed.c
kwgrib2/wgrib2/output.txt
kwgrib2/wgrib2/Irr_grids.c
kwgrib2/wgrib2/NCEP_uv.c
kwgrib2/wgrib2/CodeTable_4.222.dat
kwgrib2/wgrib2/mysql_speed_readme.txt
kwgrib2/wgrib2/ncep_tableC.dat
kwgrib2/wgrib2/save_string.c
kwgrib2/wgrib2/Limit.c
kwgrib2/wgrib2/LICENSE-zlib
kwgrib2/wgrib2/wrtieee.c
kwgrib2/wgrib2/CodeTable_1.3.dat
kwgrib2/wgrib2/Ensemble.c
kwgrib2/wgrib2/Ave_test.c
kwgrib2/wgrib2/notes.txt
kwgrib2/wgrib2/CodeTable_6.0.dat
kwgrib2/wgrib2/CodeTable_4.233.dat
kwgrib2/wgrib2/CodeTable4_4.h
kwgrib2/wgrib2/lat.txt
kwgrib2/wgrib2/gribtab.dat
kwgrib2/wgrib2/ExtName.c
kwgrib2/wgrib2/Aerosol.c
kwgrib2/wgrib2/fatal_error.c
kwgrib2/wgrib2/CodeTable_1.2.dat
kwgrib2/wgrib2/CodeTable_4.10_need_to_edit.dat
kwgrib2/wgrib2/Changes
kwgrib2/wgrib2/CodeTable_3.15.dat
kwgrib2/wgrib2/Wrt_grib.c
kwgrib2/wgrib2/NDFD_gribtab.dat
kwgrib2/wgrib2/Data.c
kwgrib2/wgrib2/Summary.c
kwgrib2/wgrib2/Netcdf.c
kwgrib2/wgrib2/Sec_len.c
kwgrib2/wgrib2/SpatialProcessing.c
kwgrib2/wgrib2/Small_grib.c
kwgrib2/wgrib2/Set_ens_num.c
kwgrib2/wgrib2/update_gribtable.txt
kwgrib2/wgrib2/Mysql_dump.c
kwgrib2/wgrib2/Gctpc.c
kwgrib2/wgrib2/Lola.c
kwgrib2/wgrib2/Grib.c
kwgrib2/wgrib2/Help.c
kwgrib2/wgrib2/subtime.c
kwgrib2/wgrib2/config.h
kwgrib2/wgrib2/code_table0.dat
kwgrib2/wgrib2/Sec6.c
kwgrib2/wgrib2/CodeTable_4.15.dat
kwgrib2/wgrib2/gribtab
kwgrib2/wgrib2/makefile.1
kwgrib2/wgrib2/CodeTable_4.3.dat
kwgrib2/wgrib2/Merge.c
kwgrib2/wgrib2/Tosubmsg.c
kwgrib2/wgrib2/rdieee_file.c
kwgrib2/wgrib2/Fix_ncep_3.c
kwgrib2/wgrib2/Grads.c
kwgrib2/wgrib2/CodeTable_4.10.dat
kwgrib2/wgrib2/lat2ij.c
kwgrib2/wgrib2/AAIG.c
kwgrib2/wgrib2/new_grid.txt
kwgrib2/wgrib2/LICENSE-g2clib
kwgrib2/wgrib2/flt2ieee.c
kwgrib2/wgrib2/Cyclic.c
kwgrib2/wgrib2/Mysql_speed.c
kwgrib2/wgrib2/fnlist
kwgrib2/wgrib2/CodeTable_4.208.dat
kwgrib2/wgrib2/ieee_pk.c
kwgrib2/wgrib2/Flush.c
kwgrib2/wgrib2/Satellite.c
kwgrib2/wgrib2/Sec1.c
kwgrib2/wgrib2/flt2ieee_nan.c
kwgrib2/wgrib2/mk_kgds.c
kwgrib2/gctpc20.tar.Z
kwgrib2/README.mysql
kwgrib2/makefile
kwgrib2/README.ncep
kwgrib2/makefile.gctpc
kwgrib2/README.openmp
kwgrib2/README.netcdf4
kwgrib2/README.open64
kwgrib2/aux_progs/
kwgrib2/aux_progs/gmerge.make
kwgrib2/aux_progs/gmerge.c
kwgrib2/aux_progs/uint8.c
kwgrib2/aux_progs/grb2.h
kwgrib2/aux_progs/smallest_grib2.make
kwgrib2/aux_progs/README
kwgrib2/aux_progs/smallest_4.make
kwgrib2/aux_progs/smallest_grib2.c
kwgrib2/aux_progs/smallest_4.c
kwgrib2/g2clib-1.2.1/
kwgrib2/g2clib-1.2.1/g2_addgrid.c
kwgrib2/g2clib-1.2.1/mkieee.c
kwgrib2/g2clib-1.2.1/g2_info.c
kwgrib2/g2clib-1.2.1/jpcpack.c
kwgrib2/g2clib-1.2.1/g2_addlocal.c
kwgrib2/g2clib-1.2.1/simunpack.c
kwgrib2/g2clib-1.2.1/dec_png.c
kwgrib2/g2clib-1.2.1/specpack.c
kwgrib2/g2clib-1.2.1/gbits.c
kwgrib2/g2clib-1.2.1/g2_gribend.c
kwgrib2/g2clib-1.2.1/getdim.c
kwgrib2/g2clib-1.2.1/pdstemplates.h
kwgrib2/g2clib-1.2.1/g2_getfld.c
kwgrib2/g2clib-1.2.1/g2_create.c
kwgrib2/g2clib-1.2.1/gridtemplates.h
kwgrib2/g2clib-1.2.1/g2_unpack1.c
kwgrib2/g2clib-1.2.1/g2_unpack7.c
kwgrib2/g2clib-1.2.1/gridtemplates.c
kwgrib2/g2clib-1.2.1/g2_unpack4.c
kwgrib2/g2clib-1.2.1/jpcunpack.c
kwgrib2/g2clib-1.2.1/seekgb.c
kwgrib2/g2clib-1.2.1/drstemplates.c
kwgrib2/g2clib-1.2.1/g2_unpack6.c
kwgrib2/g2clib-1.2.1/enc_png.c
kwgrib2/g2clib-1.2.1/pdstemplates.c
kwgrib2/g2clib-1.2.1/misspack.c
kwgrib2/g2clib-1.2.1/g2_addfield.c
kwgrib2/g2clib-1.2.1/drstemplates.h
kwgrib2/g2clib-1.2.1/g2_unpack3.c
kwgrib2/g2clib-1.2.1/rdieee.c
kwgrib2/g2clib-1.2.1/reduce.c
kwgrib2/g2clib-1.2.1/pack_gp.c
kwgrib2/g2clib-1.2.1/int_power.c
kwgrib2/g2clib-1.2.1/makefile
kwgrib2/g2clib-1.2.1/pngunpack.c
kwgrib2/g2clib-1.2.1/g2_unpack5.c
kwgrib2/g2clib-1.2.1/dec_jpeg2000.c
kwgrib2/g2clib-1.2.1/g2_miss.c
kwgrib2/g2clib-1.2.1/compack.c
kwgrib2/g2clib-1.2.1/pngpack.c
kwgrib2/g2clib-1.2.1/specunpack.c
kwgrib2/g2clib-1.2.1/grib2.h
kwgrib2/g2clib-1.2.1/comunpack.c
kwgrib2/g2clib-1.2.1/g2_unpack2.c
kwgrib2/g2clib-1.2.1/simpack.c
kwgrib2/g2clib-1.2.1/getpoly.c
kwgrib2/g2clib-1.2.1/enc_jpeg2000.c
kwgrib2/g2clib-1.2.1/g2_free.c
kwgrib2/g2clib-1.2.1/cmplxpack.c
kwgrib2/proj.h
kwgrib2/iplib.2012/
kwgrib2/iplib.2012/polfixv.f
kwgrib2/iplib.2012/ijkgds.f
kwgrib2/iplib.2012/movect.f
kwgrib2/iplib.2012/makgds.f
kwgrib2/iplib.2012/readme
kwgrib2/iplib.2012/gdswzd01.f
kwgrib2/iplib.2012/polates1.f
kwgrib2/iplib.2012/polatev3.f
kwgrib2/iplib.2012/ijkgds0.f
kwgrib2/iplib.2012/gausslat.f
kwgrib2/iplib.2012/ipspaste.f
kwgrib2/iplib.2012/polfixs.f
kwgrib2/iplib.2012/gdswzdca.f
kwgrib2/iplib.2012/ipxetas.f
kwgrib2/iplib.2012/ipxwafs2.f
kwgrib2/iplib.2012/polates0.f
kwgrib2/iplib.2012/polatev2.f
kwgrib2/iplib.2012/gdswiz05.f
kwgrib2/iplib.2012/gdswzd03.f
kwgrib2/iplib.2012/gdswizc9.f
kwgrib2/iplib.2012/ijkgds1.f
kwgrib2/iplib.2012/ipxwafs.f
kwgrib2/iplib.2012/gdswiz03.f
kwgrib2/iplib.2012/polates4.f
kwgrib2/iplib.2012/polates6.f
kwgrib2/iplib.2012/ipxwafs3.f
kwgrib2/iplib.2012/polatev4.f
kwgrib2/iplib.2012/polatev1.f
kwgrib2/iplib.2012/gdswzd00.f
kwgrib2/iplib.2012/polateg4.f
kwgrib2/iplib.2012/gdswzd05.f
kwgrib2/iplib.2012/makefile
kwgrib2/iplib.2012/gdswzdcb.f
kwgrib2/iplib.2012/gdsawt.f
kwgrib2/iplib.2012/gdswizcb.f
kwgrib2/iplib.2012/gdswiz.f
kwgrib2/iplib.2012/gdswizcd.f
kwgrib2/iplib.2012/gdswzd04.f
kwgrib2/iplib.2012/gcdist.f
kwgrib2/iplib.2012/splat.f
kwgrib2/iplib.2012/gdswiz00.f
kwgrib2/iplib.2012/polates3.f
kwgrib2/iplib.2012/ipolatev.f
kwgrib2/iplib.2012/gdswiz04.f
kwgrib2/iplib.2012/polatev6.f
kwgrib2/iplib.2012/gdswiz01.f
kwgrib2/iplib.2012/gdswzdc9.f
kwgrib2/iplib.2012/gdswizca.f
kwgrib2/iplib.2012/ipolates.f
kwgrib2/iplib.2012/ipsector.f
kwgrib2/iplib.2012/polateg1.f
kwgrib2/iplib.2012/polates2.f
kwgrib2/iplib.2012/polateg0.f
kwgrib2/iplib.2012/polatev0.f
kwgrib2/iplib.2012/ipmerge2.f
kwgrib2/iplib.2012/gdswzdcd.f
kwgrib2/iplib.2012/gdswzd.f
-
[2 단계] 컴파일
-
/SYSTEM/LINUX/kwgrib2/kwgrib2 경로에서 신규 디렉터리 생성 (mkdir bin)
-
컴파일 하기 앞서 vi makefile에서 설치 경로를 설정합니다.
-
단축키 (shift + w + :)를 통해 /prog를 검색합니다.
-
실행파일 생성 위치 (bindir)의 경우 /SYSTEM/LINUX/kwgrib2/kwgrib2/bin이고 실행 파일 이름 정의 (prog)에서는 기본값 (Default 값)으로 설정합니다 (91-92행 참조).
-
make를 통해 컴파일 합니다.
-
-
실행 파일 이름 정의 (prog) 정보
# often enviroment variable FC=fortran compiler, if not, define it here
# FC=gfortran
# bindir=${cwd}
bindir=/SYSTEM/LINUX/kwgrib2/kwgrib2/bin
prog=${bindir}/kwgrib2
# ...
# 중략
# ...
make[1]: Leaving directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/wgrib2'
cd aux_progs && make -f gmerge.make
make[1]: Entering directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
cc -o gmerge gmerge.c uint8.c
make[1]: Leaving directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
cd aux_progs && make -f smallest_grib2.make
make[1]: Entering directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
cc -o smallest_grib2 smallest_grib2.c uint8.c
make[1]: Leaving directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
cd aux_progs && make -f smallest_4.make
make[1]: Entering directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
cc -o smallest_4 smallest_4.c uint8.c
make[1]: Leaving directory `/SYSTEM/LINUX/kwgrib2/kwgrib2/aux_progs'
[root linux@/SYSTEM/LINUX/kwgrib2/kwgrib2]# make
-
[3 단계] 환경 변수 설정
-
프롬프트에서 which kwgrib2를 입력해도 확인할 수 없습니다.
-
이는 리눅스 환경에서 kwgrib2 설치 디렉터리를 찾을 수 없기 때문입니다.
-
따라서 vi ~/.bashrc에서 KWGRIB2 환경 변수를 입력해야 합니다.
-
source ~/.bashrc를 통해 재 실행합니다.
-
프롬프트에서 kwgrib2 확인
-
[root linux@/SYSTEM/LINUX/kwgrib2]# vi ~/.bashrc
#==========================================
# Configure
#==========================================
# GrADS v2.1.1
export GRADS=/usr/local/grads-2.1.1.b0
# GrADS v2.2.0
# export GRADS=/usr/local/bin/grads/grads-2.2.0
export KWGRIB2=/SYSTEM/LINUX/kwgrib2/kwgrib2
arrRootConfig=($GRADS $KWGRIB2)
for i in ${arrRootConfig[*]}; do
if [ ! -z $i ]; then
if [ -d $i/bin ]; then PATH=$i/bin:$PATH ; fi
if [ -d $i/lib ]; then LD_LIBRARY_PATH=$i/lib:$LD_LIBRARY_PATH ; fi
if [ -d $i/sbin -a `id -u` = 0 ]; then PATH=$i/sbin:$PATH ; fi
if [ -d $i/man ]; then MANPATH=$MANPATH:$i/man ; fi
if [ -d $i/config ]; then PATH=$i/config:$PATH ; fi
fi
done
[root linux@/SYSTEM/LINUX/kwgrib2/kwgrib2]# kwgrib2
wgrib2 v0.1.9.6a 5/2012 Wesley Ebisuzaki, Reinoud Bokhorst, Jaakko Hyvätti, Kristian Nilssen, Karl Pfeiffer, Pablo Romero, Manfred Schwarb, Arlindo da Silva, Niklas Sondell, Sergey Varlamov
-0xSec inv X Hex dump of section X (0..8)
-aerosol_size inv optical properties of an aerosol
-aerosol_wavelength inv optical properties of an aerosol
-bitmap inv bitmap mode
-center inv center
-checksum inv X CRC checksum of section X (0..8), whole message (X = -1/message) or (X=data)
-disc inv discipline (code table 0.0)
-domain inv find rectangular domain for g2ctl/GrADS plots
-end_ft inv verf time = reference_time + forecast_time + stat. proc time (YYYYMMDDHH) (same as -vt)
-end_FT inv verf time = reference_time + forecast_time + stat. proc time (YYYYMMDDHHMMSS) (same as -VT)
-ens inv ensemble information
-ext_name inv extended name, var+qualifiers
-ftime inv forecast time
-full_name inv extended name, var+qualifiers
-gctpc inv X X=0,1 use gctpc library (testing)
-get_byte inv X Y Z get bytes in Section X, location Y (1..N), number of bytes Z (decimal format)
-get_hex inv X Y Z get bytes in Section X, location Y (1..N), number of bytes Z (bytes in hexadecimal format)
-get_int inv X Y Z get 4-byte ints in Section X, location Y (byte), number of ints Z
-grid inv grid definition
-ij inv X Y value of field at grid(X,Y) X=1,..,nx Y=1,..,ny (WxText enabled)
-ijlat inv X Y lat,lon and grid value at grid(X,Y) X=1,..,nx Y=1,..,ny (WxText enabled)
-ilat inv X lat,lon and grid value at Xth grid point, X=1,..,npnts (WxText enabled)
-lev inv level (code table 4.5)
-ll2i inv X Y x=lon y=lat, converts to (i)
-ll2ij inv X Y x=lon y=lat, converts lon-lat (i,j)
-lon inv X Y value at grid point nearest lon=X lat=Y (WxText enabled)
-match_inv inv inventory used by -match, -not, -if and -not_if
-max inv print maximum value
-min inv print minimum value
-misc inv variable name qualifiers like chemical, ensemble, probability, etc
-MM inv reference time MM
-n inv prints out inventory number
-N_ens inv number of ensemble members
-nl inv inserts new line into inventory
-nlons inv number of longitudes for each latitude
-nl_out inv X write new line in file X
-npts inv number of grid points
-nxny inv nx and ny of grid
-packing inv shows the packing mode (use -v for more details)
-print inv X inserts string into inventory
-prob inv probability information
-process inv Process (code table 4.3)
-processid inv process id (locally defined)
-range inv print out location of record in bytes, 0 = first byte
-RT inv type of reference Time
-s inv simple inventory
-S inv simple inventory with minutes and seconds (subject to change)
-scale inv scale for packing
-scaling inv scaling for packing (old format)
-scan inv scan order of grid
-Sec0 inv contents of section0
-Sec3 inv contents of section 3 (Grid Definition Section)
-Sec4 inv Sec 4 values (Product definition section)
-Sec5 inv Sec 5 values (Data representation section)
-Sec6 inv show bit-map section
-Sec_len inv length of various grib sections
-spatial_proc inv show spacial processing, pdt=4.15
-spectral inv show spectral bands
-spectral_bands inv spectral bands for satellite, pdt=4.31
-start_ft inv verf time = reference_time + forecast_time (YYYYMMDDHH) : no stat. proc time
-start_FT inv verf time = reference_time + forecast_time (YYYYMMDDHHMMSS) - no stat. proc time
-stats inv statistical summary of data values
-subcenter inv subcenter
-t inv reference time YYYYMMDDHH, -v2 for alt format
-T inv reference time YYYYMMDDHHMMSS
-table inv parameter table
-unix_time inv print unix timestamp for rt & vt
-V inv diagnostic output
-var inv short variable name
-varX inv raw variable name - discipline mastertab localtab center parmcat parmnum
-vector_dir inv grid or earth relative winds
-verf inv simple inventory using verification time
-vt inv verf time = reference_time + forecast_time, -v2 for alt format
-VT inv verf time = reference_time + forecast_time (YYYYMMDDHHMMSS)
-wave_partition inv ocean surface wave partition (pdt=52)
-YY inv reference time YYYY
-s_out inv> X simple inventory written to X
-big_endian misc sets ieee output to big endian (default is big endian)
-colon misc X replace item deliminator (:) with X
-config misc shows the configuration
-count misc prints number of fields
-end misc stop after first (sub)message (save time)
-fix_CFSv2_fcst misc X Y Z fixes CFSv2 monthly fcst X=daily or 00/06/12/18 Y=pert no. Z=number ens fcsts v1.0
-fix_ncep misc fix ncep PDT=8 headers produced by cnvgrib
-grid_changes misc prints number of grid changes
-grid_def misc read lon and lat data from grib file -- experimental
-h misc help, shows common options
-header misc f77 header or nx-ny header in text output (default)
-help misc X help [search string|all], -help all, shows all options
-if misc X if X (POSIX regular expression) matches, conditional execution up to next output/fi
-if_n misc X if (inv numbers in range), X=(start:end:step)
-if_rec misc X if (record numbers in range), X=(start:end:step)
-if_reg misc X if rpn registers defined, X = A, A:B, A:B:C, etc A = register number
-ijundefine misc X Y Z sets grid point values to undefined X=(in-box|out-box) Y=ix0:ix1 Z=iy0:iy1 ix=(1..nx) iy=(1..ny)
-import_bin misc X read binary file (X) for data
-import_ieee misc X read ieee file (X) for data
-import_text misc X read text file (X) for data
-inv misc X write inventory to X
-limit misc X stops after X fields decoded
-little_endian misc sets ieee output to little endian (default is big endian)
-new_grid_interpolation misc X new_grid interpolation X=bilinear,bicubic,neighbor,budget
-new_grid_ipopt misc X new_grid ipopt values X=i1:i2..:iN N <= 20
-new_grid_vectors misc X change fields to vector interpolate: X=none,default,UGRD:VGRD
-new_grid_winds misc X new_grid wind orientation: X = grid, earth (N/S, default) -- alpha
-no_header misc no f77 header or nx-ny header in text output
-not_if misc X if not X (regular expression) matches, conditional execution until next output/fi
-rpn misc X reverse polish notation calculator (beta)
-set misc X Y set X = Y, X=local_table,etc (help: -set help help)
-set_ave misc X set ave/acc .. only on pdt=4.0 only anl/fcst
-set_bin_prec misc X X set number of binary bits for grib_out packing
-set_byte misc X Y Z set bytes in Section X, location Y (1..N), bytes Z (a|a:b:c)
-set_date misc X changes date code .. keep old date code if not specified completely
-set_ensm_derived_fcst misc X Y convert PDT 0,1,2 -> 2, 8,11,12 -> 12, X=code table 4.7 Y=num ens members
-set_ens_num misc X Y Z convert PDT 0,1 -> 1, 8,11 -> 11, X=code table 4.6 Y=pert num Z=num ens members
-set_ftime misc X set ftime .. only on pdt=4.0 only anl/fcst
-set_grib_max_bits misc X sets scaling so number of bits does not exceed N in (new) grib output
-set_grib_type misc X set grib type = jpeg, simple, ieee, complex(1|2|3), same
-set_hex misc X Y Z set bytes in Section X, location Y (1..N), bytes Z (a|a:b:c) in hexadecimal
-set_ijval misc X Y Z sets grid point value X=ix Y=iy Z=val
-set_int misc X Y Z set 4-byte ints in Section X, location Y (1..N), signed integers Z (a|a:b:c)
-set_lev misc X changes level code .. not complete
-set_metadata misc X read meta-data for grib writing from file X
-set_pdt misc X makes new (clean) pdt, X=PDT_number or X=PDT_number:size of PDT in octets
-set_scaling misc X Y set decimal scaling=X binary scaling=Y for grib_out packing
-set_sec_size misc X Y resizes section , X=section number, Y=size in octets, DANGEROUS
-set_ts_dates misc X Y Z changes date code for time series X=YYYYMMDDHH(mmss) Y=dtime Z=block size
-set_var misc X changes variable name
-submsg misc X process submessage X (0=process all messages)
-sys misc X run system/shell command, X=shell command
-text_col misc X number of columns on text output
-text_fmt misc X format for text output (C)
-udf misc X Y run UDF, X=program+optional_args, Y=return file
-udf_arg misc X Y add grib-data to UDF argument file, X=file Y=name
-undefine misc X Y Z sets grid point values to undefined X=(in-box|out-box) Y=lon0:lon1 Z=lat0:lat1
-undefine_val misc X grid point set to undefined if X=val or X=low:high
-v misc verbose (v=1)
-v0 misc not verbose (v=0)
-v2 misc really verbose (v=2)
-version misc print version
-AAIG out writes Ascii ArcInfo Grid file, lat-lon grid only (alpha)
-ave out X Y average X=time step, Y=output grib file needs file is special order
-bin out X write binary data to X
-cress_lola out X..Z,A lon-lat grid values X=lon0:nlon:dlon Y=lat0:nlat:dlat Z=file A=radius1:radius2:..:radiusN
-csv out X make comma separated file, X=file (WxText enabled)
-fcst_ave out X Y average X=time step, Y=output grib file needs file is special order
-fi out null output operation
-grib out X writes GRIB record (one submessage) to X
-GRIB out X writes entire GRIB record (all submessages)
-grib_ieee out X writes data[] to X.grb, X.head, X.tail, and X.h
-grib_out out X writes decoded/modified data in grib-2 format to file X
-grib_out_irr out X Y writes irregular grid grib X=(all|defined) Y=(output file)
-ieee out X write (default:big-endian) IEEE data to X
-ijbox out X..Z,A grid values in bounding box X=i1:i2[:di] Y=j1:j2[:dj] Z=file A=[bin|text|spread]
-ijsmall_grib out X Y Z make small domain grib file X=ix0:ix1 Y=iy0:iy1 Z=file (beta)
-irr_grid out X Y Z make irregular grid, nearest neighbor, X=lon-lat list Y=radius (km) Z=output grib file
-lola out X..Z,A lon-lat grid values X=lon0:nlon:dlon Y=lat0:nlat:dlat Z=file A=[bin|text|spread|grib]
-merge_fcst out X Y normalize NCEP-type ave/acc X=number Y=output grib file
-mysql out 5 args H=[host] U=[user] P=[password] D=[db] T=[table] (alpha)
-mysql_dump out 7 args H=[host] U=[user] P=[password] D=[db] T=[table] W=[western_lons:0|1] PV=[remove unlikely:0|1]
-mysql_speed out 7 args H=[host] U=[user] P=[password] D=[db] T=[table] W=[western_lons:0|1] PV=[remove unlikely:0|1]
-ncep_norm out X normalize NCEP-type ave/acc X=output grib file
-ncep_uv out X combine U and V fields into one message like NCEP operations
-netcdf out X write netcdf data to X
-new_grid out X..Z,A bilinear interpolate: X=projection Y=x0:nx:dx Z=y0:ny:dy A=grib_file alpha
-small_grib out X Y Z make small domain grib file X=lonW:lonE Y=latS:latN Z=file (beta)
-spread out X write text - spread sheet format into X (WxText enabled)
-text out X write text data into X
-tosubmsg out X convert GRIB message to submessage and write to file X
-wind_speed out X calculate wind speed, X = output gribfile (U then V in datafile)
-append init append mode, write to existing output files
-crlf init make the end of the inventory a crlf (windows) instead of newline (unix)
-d init X dump message X (n or n.m), only 1 -d allowed
-fix_ncep_2 init ncep bug fix 2, probability observation < -ve number
-fix_ncep_3 init sets flag to fix ncep bug 3 (constant fields)
-fix_ncep_4 init fixes NCEP grib2 files where DX and DY are undefined
-for init X process record numbers in range, X=(start:end:step), only one -for allowed
-for_n init X process inv numbers in range, X=(start:end:step), only one -for allowed
-g2clib init X X=0/1 use g2clib for decoding grib
-i init read Inventory from stdin
-match init X process data that matches X (POSIX regular expression)
-nc3 init use netcdf3 (classic)
-nc4 init use netcdf4 (compressed, controlled endianness etc)
-nc_grads init require netcdf file to be grads v1.9b4 compatible (fixed time step only)
-nc_nlev init X netcdf, X = max LEV dimension for {TIME,LEV,LAT,LON} data
-nc_pack init X pack/check limits of all NEW input variables, X=min:max[:byte|short|float]
-nc_table init X X is conversion_to_netcdf_table file name
-nc_time init X netcdf, [[-]yyyymmddhhnnss]:[dt{s[ec]|m[in]|h[our]|d[ay]}], [-] is for time alignment only
-no_append init not append mode, write to new output files (default)
-no_nc_grads init netcdf file may be not grads v1.9b4 compatible, variable time step
-no_nc_pack init no packing in netcdf for NEW variables
-no_nc_table init disable previously defined conversion_to_netcdf_table
-no_nc_time init netcdf, disable previously defined initial or relative date and time step
-not init X process data that does not match X (POSIX regular expression)
-one_line init puts all on one line (makes into inventory format)
-order init X decoded data in X (raw|we:sn|we:ns) order, we:sn is default
-set_ext_name init X X=0/1 extended name on/off
-set_regex init X set regex mode X = 0:extended regex (default) 1:pattern 2:extended regex & quote metacharacters
-tigge init use modified-TIGGE grib table
관련 자료
-
국가기상슈퍼컴퓨터 산출자료 공개 서비스 활용가이드
참고 문헌
[논문]
- 없음
[보고서]
- 없음
[URL]
- 없음
문의사항
[기상학/프로그래밍 언어]
- sangho.lee.1990@gmail.com
[해양학/천문학/빅데이터]
- saimang0804@gmail.com
'기상학·천문학 > 연구개발' 카테고리의 다른 글
[연구개발] 공개 SW 솔루션 가이드 : 운영체제 (OS), 스토리지, 가상화, 데이터관리, SW공학도구, 성능관리, 자원관리, 보안, 클라우드, 분산시스템SW, SLB(부하분산), WEB/WAS서버, 콘텐츠배포, 협업관.. (0) | 2020.10.22 |
---|---|
[연구개발] 기상 관측소 (AWS, ASOS)에 대한 메타 정보 및 시각화 (0) | 2020.07.15 |
[연구개발] 학술 논문 작성 방법 (0) | 2020.05.12 |
[연구개발] 로거넷 LoggNet 프로그램 설정 정보 (설명서, 사용자 교육 자료, 소스 코드) (0) | 2020.05.11 |
[연구개발] 복사-위성 연구소 기상/복사 관측 장비 현황 및 사양 (0) | 2020.05.10 |
최근댓글