pg_config — PostgreSQL 설치된 버전에 대한 여러 정보들을 보여줌
pg_config [옵션...]
pg_config 도구는 설치된 PostgreSQL 여러 정보들을 보여 준다. 예를 들어, 필요한 헤더 파일과 라이브러리를 쉽게 찾을 수 있도록 해서 PostgreSQL 제반 패키지를 보다 쉽게 만들 수 있도록 한다.
pg_config 명령은 다음 여러 옵션과 함께 사용한다:
--bindir
실행 파일들이 있는 디렉터리를 보여준다. 예를 들어 psql
명령어가 어느 디렉터리에 있는지 알려 준다. 결국 pg_config
이 프로그램이 있는 위치를 알려 주는 셈이다.
--docdir문서 파일이 있는 디렉터리를 보여준다.
--htmldirHTML 문서 파일이 있는 디렉터리를 보여준다.
--includedirC 언어 응용 프로그램을 만들 때 필요한 헤더 파일이 있는 디렉터리를 보여준다.
--pkgincludedir기타 C 헤더 파일이 있는 디렉터리를 보여준다.
--includedir-server서버 확장 기능을 C 언어로 만들 때 필요한 헤더 파일이 있는 디렉터리를 보여준다.
--libdir서버 실행에 필요한 라이브러리가 있는 디렉터리를 보여준다.
--pkglibdir동적 로딩 라이브러리나, 기타 서버에서 필요한 라이브러리가 있는 디렉터리를 보여준다. (기타 OS 종속적인 관련 파일들도 이 디렉터리에 둔다.)
--localedir로케일 관련 파일들이 있는 디렉터리를 보여준다. (여기서는 PostgreSQL이 빌드 될 때 로케일 지원을 안하도록 지정했다면 빈 문자열을 출력한다.)
--mandir맨 페이지 위지를 보여준다.
--sharedirOS에 독립적인 여러 파일들이 있는 디렉터리를 보여준다.
--sysconfdirOS 전역 환경 설정 파필이 있는 디렉터리를 보여준다.
--pgxs확장 모듈 개발용 makefile 절대 경로를 보여준다.
--configure
PostgreSQL 빌드 할 때 사용한 configure
명령의 옵션을 보여준다. 이 옵션은 같은 환경으로 빌드하려고
할때 유용하게 사용되며, 현재 사용하려고 하는 소프트웨어가
어떤 환경에서 만들어졌는지 확인하는데 유용하다. (OS 배포판에서는
그 배포 관리 업체에서 어떻게 빌드 했는지를 살펴 볼 수 있다.)
아래 예제에서도 이 옵션 사용법이 있다.
--cc
PostgreSQL 빌드 할 때 사용한 CC
변수 값. 빌드 할 때 사용한 C 컴파일러를 알려 준다.
--cppflags
PostgreSQL 빌드 할 때 사용한
CPPFLAGS 변수 값. 이 출력은
일반적으로 헤더 파일이 있는 디렉터리를 지정하는
-I 옵션 값을 보여준다.
--cflags
PostgreSQL 빌드 할 때 사용한
CFLAGS 변수 값. 이 출력은
일반적으로 헤더 파일이 있는 디렉터리를 지정하는
-I 옵션 값을 보여준다.
--cflags_sl
PostgreSQL에서 사용하는
공유 라이브러리 파일 만드는데 필요한 옵션인
CFLAGS_SL 변수 값.
--ldflags
PostgreSQL 빌드에 필요한 링크 옵션
LDFLAGS 변수 값.
--ldflags_ex
Print the value of the LDFLAGS_EX variable that was used for building
PostgreSQL. This shows linker switches
used for building executables only.
--ldflags_sl
Print the value of the LDFLAGS_SL variable that was used for building
PostgreSQL. This shows linker switches
used for building shared libraries only.
--libs
PostgreSQL 빌드에 필요한 라이브러리 옵션
LIBS 변수 값.
이 값은 일반적으로 -l 옵션으로 출력된다.
--version이 PostgreSQL 버전을 보여준다.
-?--helppg_config 명령행 옵션 도움말을 보여 준다.
하나 이상의 옵션을 사용하면, 한 줄 하나씩 그 옵션에 대한 정보를 보여 준다. 아무런 옵션을 사용하지 않으면, 모든 옵션 정보를 보여 준다.
--includedir 옵션과 함께,
PostgreSQL 7.2 버전부터
--includedir-server 옵션도 함께 제공한다.
두 옵션을 함께 사용하는 경우는 먼저 최신 옵션을 지정하고,
그 명령이 정상적으로 끝났는지, 명령 반환 값을 확인해야 한다.
--docdir, --pkgincludedir,
--localedir, --mandir,
--sharedir, --sysconfdir,
--cc, --cppflags,
--cflags, --cflags_sl,
--ldflags, --ldflags_sl,
and --libs 옵션들은 PostgreSQL 8.1
버전에서 추가 되었다. --htmldir 옵션은
PostgreSQL 8.4 버전에서 추가 되었다.
--ldflags_ex 옵션은 PostgreSQL 9.0
버전에서 추가 되었다.
In releases prior to PostgreSQL 7.1, before
pg_config came to be, a method for finding the
equivalent configuration information did not exist.
현재 PostgreSQL 패키지를 빌드하는데 필요한 configure 명령의 옵션들을 사용해서 다시 빌드 환경을 만들 때 사용하는 명령:
eval ./configure `pg_config --configure`
이 명령은 새 버전을 빌드 할 때 아주 유용하다(옮긴이).
pg_config --configure 명령은 빌드에
필요한 정로를 출력하는데, 이 결과값을 다시 configure에서 사용할 수
있도록 역따옴표(`)를 이용했고, 이 출력은 각 옵션을 값을
따옴표로 둘러싸는데, 이것을 configure에서 사용하기 위해
eval 명령을 사용했다.