구성
토토 커뮤니티 절차의 첫 번째 단계는 시스템의 소스 트리를 구성하고 원하는 옵션을 선택하는 것입니다. 이것은를 실행하여 수행됩니다.구성
스크립트. 기본 토토 커뮤니티의 경우 간단히 입력하십시오.
./configure
이 스크립트는 다양한 시스템 종속 변수에 대한 값을 결정하고 운영 체제의 단점을 감지하기 위해 여러 테스트를 실행하고 마지막으로 빌드 트리에서 여러 파일을 생성하여 찾은 내용을 기록합니다..
당신도 실행할 수 있습니다구성
소스 트리 외부의 디렉토리에서 빌드 디렉토리를 원래 소스 파일과 별도로 유지하려면 빌드를 작성하십시오. 이 절차는 a라고합니다.vpath빌드. 방법은 다음과 같습니다.
mkdir build_dir
cd build_dir
/path/to/source/tree/configure [옵션 이동]
make
기본 구성은 서버 및 유틸리티뿐만 아니라 C 컴파일러 만 필요한 모든 클라이언트 응용 프로그램 및 인터페이스를 빌드합니다. 모든 파일이에 토토 커뮤니티됩니다./usr/local/pgsql
기본적으로.
하나 이상의 명령 줄 옵션을 제공하여 빌드 및 토토 커뮤니티 프로세스를 사용자 정의 할 수 있습니다구성
. 일반적으로 토토 커뮤니티 위치 또는 구축 된 선택적 기능 세트를 사용자 정의합니다.구성
많은 옵션이 있으며,이 옵션에 설명되어 있습니다.섹션 17.4.1.
또한구성
에 설명 된대로 특정 환경 변수에 응답합니다.섹션 17.4.2. 이들은 구성을 사용자 정의하는 추가 방법을 제공합니다.
build
빌드를 시작하려면 다음 중 하나를 입력하십시오.
만들기
전부 만들기
(토토 커뮤니티해야gnu 만들기.) 빌드는 하드웨어에 따라 몇 분이 걸립니다.
Documentation (HTML 및 Man Pages) 및 추가 모듈 (을 포함하여 빌드 할 수있는 모든 것을 빌드하려면).Contrib
), 대신 입력 :
세계 만들기
추가 모듈을 포함하여 구축 할 수있는 모든 것을 빌드하려면 (Contrib
), 그러나 문서가 없으면 대신 입력하십시오 :
World-Bin 만들기
수동으로 다른 makefile에서 빌드를 호출하려면Makelevel
예를 들어 다음과 같이 0으로 설정하십시오.
build-postgresql : $ (make) -c postgresql makelevel = 0 all
그렇게하지 않으면 이상한 오류 메시지가 발생할 수 있습니다. 일반적으로 헤더 파일 누락에 대한
회귀 테스트
토토 커뮤니티하기 전에 새로 빌드 된 서버를 테스트하려면이 시점에서 회귀 테스트를 실행할 수 있습니다. 회귀 테스트는를 확인하는 테스트 스위트입니다.PostgreSQL개발자가 기대하는 방식으로 컴퓨터에서 실행됩니다. 유형:
확인
(이것은 루트로 작동하지 않으며, 비공식적 인 토토 커뮤니티자로 토토 커뮤니티하십시오.) 참조PostgreSQL : 문서 : 14 : 33 장 회귀 토토테스트 결과 해석에 대한 자세한 정보. 같은 명령을 발행하여 나중에이 테스트를 반복 할 수 있습니다.
파일 토토 커뮤니티
기존 시스템을 업그레이드하는 경우 읽으십시오PostgreSQL : 문서 : 14 : 19.6. PostgreSQL 클러스터 메이저 토토 사이트, 클러스터 업그레이드에 대한 지침이 있습니다.
토토 커뮤니티하려면PostgreSQLenter :
토토 커뮤니티
이것은에 지정된 디렉토리에 파일을 토토 커뮤니티합니다.1 단계. 해당 영역에 적절한 권한이 있는지 확인하십시오. 일반적 으로이 단계를 루트로 수행해야합니다. 또는 대상 디렉토리를 미리 만들고 적절한 권한을 부여 할 수 있도록 준비 할 수 있습니다.
문서를 토토 커뮤니티하려면 (html 및 man pages)를 입력하십시오 :
토토 커뮤니티 -Docs 만들기
위의 세계를 건설 한 경우 대신 입력하십시오 :
토토 커뮤니티 세계 만들기
이것은 또한 문서를 토토 커뮤니티합니다.
위의 문서없이 세계를 건설 한 경우 대신 입력하십시오.
토토 커뮤니티 세계 만들기
토토 커뮤니티할 수 있습니다토토 커뮤니티-스트립 만들기
대신토토 커뮤니티
실행 파일과 라이브러리가 토토 커뮤니티 될 때 마무리합니다. 이것은 약간의 공간을 절약 할 것입니다. 디버깅 지원으로 구축 한 경우 스트리핑은 디버깅 지원을 효과적으로 제거하므로 디버깅이 더 이상 필요하지 않은 경우에만 수행해야합니다.토토 커뮤니티-스트립
합리적인 작업 절약 공간을 만들려고하지만 실행 파일에서 모든 불필요한 바이트를 제거하는 방법에 대한 완벽한 지식은 없으므로 가능한 모든 디스크 공간을 저장하려면 수동 작업을 수행해야합니다..
표준 토토 커뮤니티는 클라이언트 애플리케이션 개발 및 CO에 작성된 사용자 정의 기능 또는 데이터 유형과 같은 서버 측 프로그램 개발에 필요한 모든 헤더 파일을 제공합니다
클라이언트 전용 토토 커뮤니티 :클라이언트 응용 프로그램 및 인터페이스 라이브러리 만 토토 커뮤니티하려면 다음 명령을 토토 커뮤니티할 수 있습니다.
-C SRC/BIN 토토 커뮤니티 제작
-C SRC/include install
-C SRC/인터페이스 토토 커뮤니티 만들기
-C Doc 토토 커뮤니티 제작
SRC/BIN
서버 전용 토토 커뮤니티을위한 몇 가지 바이너리가 있지만 작습니다.
토토 커뮤니티 미확인 :토토 커뮤니티를 취소하려면 명령을 사용하십시오제거 해제
. 그러나 이것은 생성 된 디렉토리를 제거하지 않습니다.
청소 :토토 커뮤니티 후 소스 트리에서 내장 된 파일을 명령으로 제거하여 디스크 공간을 자유롭게 할 수 있습니다깨끗하게 만들기
. 이것은에 의해 만든 파일을 보존합니다.구성
프로그램, 모든 것을 재건 할 수 있도록만들기
나중에. 소스 트리를 분포 된 상태로 재설정하려면 토토 커뮤니티Distclean
. 동일한 소스 트리 내의 여러 플랫폼을 위해 빌드하려면이 작업을 수행하고 각 플랫폼에 대해 다시 구성해야합니다. (또는 소스 트리가 수정되지 않은 상태로 유지되도록 각 플랫폼에 별도의 빌드 트리를 사용하십시오.)
빌드를 수행 한 다음를 발견하면구성
옵션이 잘못되었거나, 변경하면구성
조사 (예 : 소프트웨어 업그레이드)를 조사하면 좋은 생각입니다Distclean 만들기
재구성 및 재건 전. 이것이 없으면 구성 선택의 변경 사항이 필요한 곳마다 전파되지 않을 수 있습니다.
구성
옵션구성
의 명령 줄 옵션은 다음과 같습니다. 이 목록은 철저하지 않습니다 (사용./configure -help
여기에서 다루지 않은 옵션은 교차 컴파일과 같은 고급 사용 사례를위한 것이며 표준 AutoConf 문서에 문서화되어 있습니다.
이러한 옵션 제어 위치토토 커뮤니티
파일을 넣습니다. 그만큼-prefix
옵션은 대부분의 경우 충분합니다. 특별한 요구가있는 경우이 섹션에 설명 된 다른 옵션으로 토토 커뮤니티 하위 디렉토리를 사용자 정의 할 수 있습니다. 그러나 다른 하위 디렉토리의 상대 위치를 변경하면 토토 커뮤니티가 재생 불가능할 수 있습니다. 즉, 토토 커뮤니티 후에는 이동할 수 없습니다. (그만큼man
및doc
위치는이 제한의 영향을받지 않습니다.) 재배치 가능한 토토 커뮤니티의 경우를 토토 커뮤니티할 수 있습니다.-disable-ratp
나중에 설명 된 옵션.
--prefix =prefix
디렉토리 아래의 모든 파일 토토 커뮤니티prefix
21319_21333/usr/local/pgsql
. 실제 파일은 다양한 하위 디렉터로 토토 커뮤니티됩니다. 파일은에 직접 토토 커뮤니티되지 않습니다.접두사
디렉토리.
--exec-prefix =exec-prefix
다른 접두사 아래에 아키텍처에 따른 파일을 토토 커뮤니티할 수 있습니다.exec-prefix
, 무엇보다prefix
이것은 호스트간에 아키텍처 독립적 파일을 공유하는 데 유용 할 수 있습니다. 당신이 이것을 생략하면exec-prefix
과 동일합니다prefix
그리고 아키텍처 의존적 파일과 독립 파일 모두 같은 트리 아래에 토토 커뮤니티 될 것입니다. 아마도 원하는 것일 것입니다.
--- bindir =디렉토리
실행 가능한 프로그램에 대한 디렉토리를 지정합니다. 기본값은
, 이것은 일반적으로 의미exec-prefix
/bin/usr/local/pgsql/bin
.
-sysconfdir =디렉토리
다양한 구성 파일의 디렉토리를 설정합니다.
기본적으로.prefix
/etc
-libdir =디렉토리
라이브러리 및 동적으로로드 가능한 모듈을 토토 커뮤니티할 위치를 설정합니다. 기본값은
.exec-prefix
/lib
-includedir =디렉토리
C 및 C ++ 헤더 파일을 토토 커뮤니티하기위한 디렉토리를 설정합니다. 기본값은
.접두사
/include
-datarootdir =디렉토리
다양한 유형의 읽기 전용 데이터 파일에 대한 루트 디렉토리를 설정합니다. 다음 옵션 중 일부에 대한 기본값 만 설정합니다. 기본값은
.prefix
/share
-datadir =디렉토리
토토 커뮤니티된 프로그램에서 사용하는 읽기 전용 데이터 파일의 디렉토리를 설정합니다. 기본값은
. 데이터베이스 파일이 배치 될 위치와 관련이 없습니다.Datarootdir
--localedir =디렉토리
특정 메시지 변환 카탈로그 파일에서 로케일 데이터 토토 커뮤니티 디렉토리를 설정합니다. 기본값은
.Datarootdir
/locale
-mandir =디렉토리
함께 제공되는 남자 페이지PostgreSQL이 디렉토리 아래에 토토 커뮤니티됩니다.Man
하위 디렉터. 기본값은x
.Datarootdir
/man
-docdir =디렉토리
을 제외하고 문서 파일을 토토 커뮤니티하기위한 루트 디렉토리를 설정합니다“man”페이지. 이것은 다음 옵션의 기본값 만 설정합니다. 이 옵션의 기본값은입니다.
.Datarootdir
/doc/postgresql
-htmldir =디렉토리
html- 형식의 문서에 대한PostgreSQL이 디렉토리에 토토 커뮤니티됩니다. 기본값은
.Datarootdir
토토 커뮤니티할 수 있도록 간호가 취해졌습니다PostgreSQL공유 토토 커뮤니티 위치로 (예 :/usr/local/include
) 나머지 시스템의 네임 스페이스를 방해하지 않고. 첫째, 문자열“/postgresql
”자동으로 추가됩니다Datadir
, Sysconfdir
및docdir
, 완전히 확장 된 디렉토리 이름이 이미 문자열을 포함하지 않는 한“Postgres
”또는“PGSQL
”. 예를 들어, 선택한 경우/usr/local
접두사로 문서가 토토 커뮤니티됩니다/usr/local/doc/postgresql
, 그러나 접두사가있는 경우/opt/postgres
/opt/postgres/doc
. 클라이언트 인터페이스의 공개 C 헤더 파일이에 토토 커뮤니티됩니다.포함
그리고 네임 스페이스 청소입니다. 내부 헤더 파일과 서버 헤더 파일은의 개인 디렉토리에 토토 커뮤니티됩니다.포함
. 헤더 파일에 액세스하는 방법에 대한 정보는 각 인터페이스의 문서를 참조하십시오. 마지막으로, 개인 서브 디렉토리도 적절한 경우에 따라 생성됩니다.Libdir
동적으로로드 가능한 모듈의 경우.
이 섹션에 설명 된 옵션은 다양한 구축을 가능하게합니다PostgreSQL기본적으로 구축되지 않은 기능. 이들 중 대부분은에 설명 된 바와 같이 추가 소프트웨어가 필요하기 때문에 비 분제입니다.스포츠 토토 PostgreSQL : 문서 : 14 : 17.2. 요구 사항.
--enable-nls [=언어
]
모국어 지원 활성화 (NLS), 즉 영어 이외의 언어로 프로그램의 메시지를 표시하는 능력.언어
예를 들어 지원하려는 언어의 공간 분리 된 코드 목록입니다.--enable-nls = 'de fr'
. (목록과 실제로 제공된 번역 세트 사이의 교차로는 자동으로 계산됩니다.) 목록을 지정하지 않으면 사용 가능한 모든 번역이 토토 커뮤니티됩니다.
이 옵션을 토토 커뮤니티하려면 구현이 필요합니다.getTextapi.
-with-perl
빌드pl/perl서버 측 언어.
-with-python
빌드pl/python서버 측 언어.
-with-tcl
빌드PL/TCL서버 측 언어.
-with-tclconfig =디렉토리
tcl 파일 토토 커뮤니티tclconfig.sh
, 여기에는 TCL에 인터페이스하는 모듈을 빌드하는 데 필요한 구성 정보가 포함되어 있습니다. 이 파일은 일반적으로 잘 알려진 위치에서 자동으로 발견되지만 다른 버전의 TCL을 토토 커뮤니티하려면 찾을 디렉토리를 지정할 수 있습니다tclconfig.sh
.
-with-iCu
ICU라이브러리, ICU 콜레이션 기능 사용 가능(참조PostgreSQL : 문서 : 14 : 24.2. 토토 커뮤니티 Support). 이것은 필요합니다ICU4C토토 커뮤니티할 패키지. 최소 필수 버전의ICU4C현재 4.2입니다.
기본적으로pkg-config필요한 컴파일 옵션을 찾는 데 사용됩니다. 이것은 지원됩니다ICU4C버전 4.6 이상. 이전 버전의 경우 또는 IFpkg-config토토 커뮤니티하지 않아 변수icu_cflags
andicu_libs
지정할 수 있습니다구성
,이 예에서와 같이 :
./configure ... -with -icu icu_cflags = ' -i/some/where/포함'icu_libs = ' -l/some/where/lib -licui18n -licuuc -licudata'
(ifICU4C컴파일러의 기본 검색 경로에 있으면 토토 커뮤니티을 피하기 위해 비어 비어 비어있는 문자열을 지정해야합니다.pkg-config, 예를 들어icu_cflags = ''
.)
-with-llvm
지원과 함께 빌드LLVM기반jit컴파일(참조제 32 장). 이것은 필요합니다llvm라이브러리 토토 커뮤니티. 최소 필수 버전의LLVM현재 3.9입니다.
llvm-config
필요한 컴파일 옵션을 찾는 데 사용됩니다.llvm-config
, 그리고llvm-config- $ major- $ minor
모든 지원되는 버전의 경우에서 검색됩니다Path
. 그것이 원하는 프로그램을 생산하지 않으면 토토 커뮤니티llvm_config
올바른 경로를 지정하려면llvm-config
. 예를 들어
./configure ...-with-llvm llvm_config = '/path/to/llvm/bin/llvm-config'
LLVM지원이 필요합니다Clang
컴파일러 (필요한 경우, 필요한 경우Clang
환경 변수) 및 작동중인 C ++ 컴파일러 (필요한 경우를 사용하여 지정CXX
환경 변수).
-with-lz4
빌드LZ4압축 지원. 이것은의 토토 커뮤니티을 허용합니다.LZ4테이블 데이터 압축의 경우
-with-ssl =도서관
지원을 통해 빌드SSL(암호화 된) 연결. 유일한도서관
지원 된 ISOpenSSL
. 이것은 필요합니다OpenSSL토토 커뮤니티할 패키지.구성
필요한 헤더 파일 및 라이브러리를 확인하여 귀하의OpenSSL진행하기 전에 토토 커뮤니티가 충분합니다.
-with-OpensSL
쓸데없는 동등한---with-ssl = OpenSSL
.
-with-gssapi
GSSAPI 인증을 지원하는 빌드. 많은 시스템에서 GSSAPI 시스템 (일반적으로 Kerberos 토토 커뮤니티의 일부)은 기본적으로 검색되는 위치에 토토 커뮤니티되어 있지 않습니다 (예 :/usr/include
, /usr/lib
), 옵션을 사용해야합니다-with-includes
and-with-libraries
이 옵션 외에도.구성
필요한 헤더 파일 및 라이브러리를 확인하여 진행하기 전에 GSSAPI 토토 커뮤니티가 충분한 지 확인합니다.
-with-ldap
빌드LDAP인증 및 연결 매개 변수 조회 지원 (참조PostgreSQL : 문서 : 14 : 34.18. 무지개 토토 연결 매개 변수 조회andPostgreSQL : 문서 : 14 : 21.10. 토토 캔 인증자세한 내용은). 유닉스에서는이 필요합니다.OpenLdap토토 커뮤니티할 패키지. Windows에서 기본값winldap라이브러리가 토토 커뮤니티됩니다.구성
필요한 헤더 파일 및 라이브러리를 확인하여 귀하의OpenLdap진행하기 전에 토토 커뮤니티가 충분합니다.
-with-pam
-with-bsd-auth
BSD 인증 지원이 포함 된 빌드. (BSD 인증 프레임 워크는 현재 OpenBSD에서만 토토 커뮤니티할 수 있습니다.)
-with-systemd
지원을 통해 빌드SystemD서비스 알림. 서버가 시작되면 통합이 향상됩니다SystemD그러나 그렇지 않으면 영향을 미치지 않습니다; 보다PostgreSQL : 문서 : 14 : 19.3. 데이터베이스 토토 커뮤니티 시작자세한 내용은. libsystemd이 옵션을 토토 커뮤니티하려면 관련 헤더 파일을 토토 커뮤니티해야합니다.
-with-bonjour
Bonjour Automatic Service Discovery를 지원하는 건축. 이를 위해서는 운영 체제에서 Bonjour 지원이 필요합니다. MacOS에서 추천.
-with-uuid =도서관
빌드PostgreSQL : 문서 : 14 : F.46. 스포츠 토토-sosspMODULE (지정된 UUID 라이브러리를 사용하여 UUID를 생성하는 기능을 제공합니다. 도서관
BSD
freebsd 및 기타 BSD 유래 시스템에있는 UUID 함수를 토토 커뮤니티하려면
E2FS
E2FSPROGS
프로젝트; 이 라이브러리는 대부분의 Linux 시스템과 MacOS에 있으며 다른 플랫폼에 대해서도 얻을 수 있습니다
39999_40005
토토 커뮤니티하려면OSSP UUID 라이브러리
-with-sossp-uuid
쓸데없는 동등한-with-uuid = ossp
.
-with-libxml
libxml2를 사용하여 빌드하여 SQL/XML 지원을 가능하게합니다. 이 기능에는 libxml2 버전 2.6.23 이상이 필요합니다.
필요한 컴파일러 및 링커 옵션을 감지하려면 PostgreSQL이 쿼리됩니다pkg-config
, 그것이 토토 커뮤니티되어 있고 libxml2에 대해 알고 있다면. 그렇지 않으면 프로그램XML2-CONFIG
40874_40945pkg-config
는 다중 아키텍처 토토 커뮤니티를 더 잘 처리 할 수 있기 때문에 선호됩니다.
특이한 위치에있는 libxml2 토토 커뮤니티를 토토 커뮤니티하려면 설정할 수 있습니다pkg-config
관련 환경 변수 (문서 참조) 또는 환경 변수 설정XML2_CONFIG
XML2-CONFIG
libxml2 토토 커뮤니티에 속하는 프로그램 또는 변수를 설정XML2_CFLAGS
및XML2_LIBS
. (만약에pkg-config
가 토토 커뮤니티된 다음 libxml2가 어디에 있는지에 대한 아이디어를 무시하려면XML2_CONFIG
또는 둘 다 설정XML2_CFLAGS
andXML2_LIBS
비어 있지 않은 문자열에.)
-with-libxslt
libxslt를 사용하여 빌드하여 활성화토토 캔 PostgreSQL : 문서 : 14 : F.47. XML2XML의 XSL 변환을 수행 할 모듈-with-libxml
지정해야합니다.
이 섹션에 설명 된 옵션은 특정 비활성화를 허용합니다PostgreSQL기본적으로 구축되었지만 필요한 소프트웨어 또는 시스템 기능을 사용할 수없는 경우 해제해야 할 수 있습니다. 이 옵션 사용은 실제로 필요한 경우가 아니라면 권장하지 않습니다.
-without-Readline
토토 커뮤니티 방지Readline라이브러리 (및libedit). 이 옵션은 명령 줄 편집 및 히스토랑을 비활성화합니다PSQL.
-with-libedit-preferred
BSD 라이센스의 사용을 선호libeditGPL 라이센스가 아닌 라이브러리Readline. 이 옵션은 두 라이브러리가 토토 커뮤니티된 경우에만 중요합니다. 이 경우 기본값은 사용하는 것입니다Readline.
-without-zlib
토토 커뮤니티 방지Zlib라이브러리. 이것은 압축 아카이브에 대한 지원을 비활성화합니다pg_dumpandPG_RESTORE.
-disable-spinlocks
PostgreSQL플랫폼에 대한 CPU 스핀 록 지원이 없습니다. 스핀 락지지가 부족하면 성능이 저하됩니다. 따라서이 옵션은 빌드가 중단되고 플랫폼에 스핀 록 지원이 부족하다는 것을 알려주는 경우에만 사용해야합니다. 이 옵션이 빌드에 필요한 경우PostgreSQL플랫폼에서 문제를에보고하십시오.PostgreSQL개발자.
-disable-Atomics
CPU 원자 작업 사용 비활성화. 이 옵션은 그러한 작업이 부족한 플랫폼에서 아무것도하지 않습니다. 이 플랫폼이있는 플랫폼에서는 성능이 저하됩니다. 이 옵션은 디버깅 또는 성능 비교에만 유용합니다.
-disable-shread-safety
클라이언트 라이브러리의 스레드 안전성을 비활성화합니다. 이것은 동시 스레드를 방지합니다libpqandECPG개인 연결 핸들을 안전하게 제어하는 프로그램. 스레딩 지원이 부족한 플랫폼에서만 토토 커뮤니티하십시오.
-with-includes =디렉토리
디렉토리
는 컴파일러가 헤드러 파일을 검색하는 목록에 추가 될 대장 구분 된 디렉토리 목록입니다. 선택적 패키지가있는 경우 (예 : GNUReadline) 비표준 위치에 토토 커뮤니티되면이 옵션을 사용해야하며 해당-with-libraries
옵션.
예 :-with-includes =/opt/gnu/포함 :/usr/sup/include
.
-with-libraries =디렉토리
디렉토리
는 도서관을 검색 할 콜론으로 구분 된 디렉토리 목록입니다. 이 옵션을 사용해야 할 것입니다 (및 해당-with-includes
옵션) 비표준 위치에 패키지가 토토 커뮤니티된 경우
예 :-with-libraries =/opt/gnu/lib :/usr/sup/lib
.
-with-system-tzdata =디렉토리
PostgreSQL날짜 및 시간 조작에 필요한 자체 시간 영역 데이터베이스가 포함되어 있습니다. 이 Time Zone 데이터베이스는 실제로 FreeBSD, Linux 및 Solaris와 같은 많은 운영 체제에서 제공하는 IANA Time Zone 데이터베이스와 호환되므로 다시 토토 커뮤니티하는 것이 중복됩니다. 이 옵션이 사용되면 시스템이 제공되는 시간대 데이터베이스디렉토리
PostgreSQL 소스 배포에 포함 된 대신 사용됩니다.디렉토리
절대 경로로 지정되어야합니다./usr/share/ZoneInfo
일부 운영 체제의 디렉토리 일 가능성이 높습니다. 토토 커뮤니티 루틴은 불일치 또는 잘못된 시간대 데이터를 감지하지 않습니다. 이 옵션을 사용하는 경우 회귀 테스트를 실행하여 귀하가 지적한 시간대 데이터가 올바르게 작동하는지 확인하는 것이 좋습니다PostgreSQL.
이 옵션은 주로 목표 운영 체제를 잘 알고있는 이진 패키지 유통 업체를 목표로합니다. 이 옵션을 사용하는 주요 장점은 많은 지역 일광 절약 시간 규칙이 변경 될 때마다 PostgreSQL 패키지를 업그레이드 할 필요가 없다는 것입니다. 또 다른 장점은 토토 커뮤니티 중에 시간대 데이터베이스 파일을 빌드 할 필요가없는 경우 PostgreSQL을보다 간단하게 컴파일 할 수 있다는 것입니다.
-extra-version =String
부록String
PostgreSQL 버전 번호로. 예를 들어, 미공개 git 스냅 샷으로 구축 된 바이너리를 표시하거나 A와 같은 추가 버전 문자열이 포함 된 사용자 정의 패치를 포함하는 데 토토 커뮤니티할 수 있습니다.git 설명
식별자 또는 배포 패키지 릴리스 번호.
-disable-ratp
마크하지 마십시오PostgreSQL의 실행 파일은 토토 커뮤니티의 라이브러리 디렉토리에서 공유 라이브러리를 검색해야 함을 나타 내기 위해 실행 가능합니다 (참조-libdir
). 대부분의 플랫폼 에서이 마킹은 라이브러리 디렉토리의 절대 경로를 사용하므로 나중에 토토 커뮤니티를 재배치하면 도움이되지 않습니다. 그러나 실행 파일이 공유 라이브러리를 찾을 수있는 다른 방법을 제공해야합니다. 일반적으로 라이브러리 디렉토리를 검색하려면 운영 체제의 동적 링커를 구성해야합니다. 보다섹션 17.5.1자세한 내용은
특히 테스트 빌드의 경우 기본 포트 번호를 |-with-pgport
. 이 섹션의 다른 옵션은 고급 사용자에게만 권장됩니다.
-with-pgport =번호
SET번호
서버 및 클라이언트의 기본 포트 번호로. 기본값은 5432입니다. 포트는 항상 나중에 변경할 수 있지만 여기에서 지정하면 서버와 클라이언트 모두 동일한 기본 정보가 컴파일되어 매우 편리 할 수 있습니다. 일반적으로 비 분리 값을 선택 해야하는 유일한 이유는 다중 실행하려는 경우입니다.PostgreSQL같은 기계의 서버.
-with-krb-srvnam =이름
GSSAPI에서 사용하는 Kerberos 서비스 교장의 기본 이름.Postgres
기본값입니다. Windows 환경을 위해 구축하지 않는 한 일반적 으로이 변경 사항이 없습니다.이 경우 대문자로 설정해야합니다.Postgres
.
-with-segsize =segsize
설정세그먼트 크기, 기가 바이트. 큰 테이블은 여러 작동 시스템 파일로 나뉘며 각 크기는 세그먼트 크기와 같습니다. 이는 많은 플랫폼에 존재하는 파일 크기 제한에 문제가되지 않습니다. 기본 세그먼트 크기 인 1 기가 바이트는 모든 지원되는 플랫폼에서 안전합니다. 운영 체제가있는 경우“LAGONFILE”지원 (현재 대부분의 경우)은 더 큰 세그먼트 크기를 토토 커뮤니티할 수 있습니다. 이것은 매우 큰 테이블로 작업 할 때 소비되는 파일 설명 자의 수를 줄이는 데 도움이 될 수 있습니다. 그러나 플랫폼과 사용하려는 파일 시스템에서 지원하는 것보다 큰 값을 선택하지 않도록주의하십시오. 사용하고 싶은 다른 도구 (예 :타르, 유용한 파일 크기에 제한을 설정할 수도 있습니다. 이 값은 절대적으로 요구되지는 않지만 2의 전력이라는 것이 좋습니다.이 값을 변경하면 온 디스크 데이터베이스 호환성이 나옵니다.pg_upgrade
다른 세그먼트 크기가 다른 빌드로 업그레이드하려면
-with-blocksize =Blocksize
설정블록 크기, 킬로 바이트. 이것은 테이블 내의 저장 장치 및 I/O입니다. 기본 8 킬로바이트는 대부분의 상황에 적합합니다. 그러나 다른 값은 특별한 경우에 유용 할 수 있습니다. 값은 1에서 32 사이 (킬로 바이트) 사이의 전력이어야합니다. 이 값을 변경하면 온 디스크 데이터베이스 호환성이 나옵니다.pg_upgrade
다른 블록 크기가 다른 빌드로 업그레이드하려면
-with-blocksize =Blocksize
설정월 블록 크기, 킬로 바이트. 이것은 WAL 로그 내 스토리지 단위 및 I/O입니다. 기본 8 킬로바이트는 대부분의 상황에 적합합니다. 그러나 다른 값은 특별한 경우에 유용 할 수 있습니다. 값은 1에서 64 사이 (킬로 바이트) 사이의 전력이어야합니다. 이 값을 변경하면 온 디스크 데이터베이스 호환성이 나옵니다.pg_upgrade
다른 월 블록 크기가 다른 빌드로 업그레이드하려면
이 섹션의 대부분의 옵션은 개발 또는 디버깅에만 관심이 있습니다PostgreSQL. 을 제외하고는 생산 빌드에 권장되지 않습니다.--enable-debug
, 버그가 발생하는 운이 좋은 이벤트에서 자세한 버그 보고서를 활성화하는 데 유용 할 수 있습니다. dtrace를 지원하는 플랫폼에서-enable-dtrace
생산에 토토 커뮤니티하는 것이 합리적 일 수 있습니다.
서버 내부에서 코드를 개발하는 데 사용되는 토토 커뮤니티를 구축 할 때 최소한 옵션을 사용하는 것이 좋습니다-enable-debug
and-enable-cassert
.
-enable-debug
디버깅 기호로 모든 프로그램과 라이브러리를 컴파일합니다. 즉, 문제를 분석하기 위해 디버거에서 프로그램을 실행할 수 있습니다. 이는 토토 커뮤니티된 실행 파일의 크기를 상당히 확대하고 비 GCC 컴파일러에서는 일반적으로 컴파일러 최적화를 비활성화하여 속도가 느려집니다. 그러나 기호를 사용할 수있게하는 것은 발생할 수있는 문제를 다루는 데 매우 유용합니다. 현재이 옵션은 GCC를 사용하는 경우에만 생산 토토 커뮤니티에 권장됩니다. 그러나 개발 작업을 수행하거나 베타 버전을 실행하는 경우 항상 사용해야합니다.
-enable-cassert
활성화어제서버에서 확인하여 많은 것을 테스트합니다“일어날 수 없습니다”조건. 이는 코드 개발 목적으로 매우 중요하지만 테스트는 서버의 속도를 크게 늦출 수 있습니다. 또한 테스트를 켜면 서버의 안정성이 반드시 향상되지는 않습니다! 어설 션 검사는 심각도로 분류되지 않으므로 비교적 무해한 버그가 될 수있는 것은 어설 션 실패를 유발하는 경우 서버 재시작으로 이어질 것입니다. 이 옵션은 생산 사용에 권장되지 않지만 개발 작업이나 베타 버전을 실행할 때는 이용해야합니다.
-enable-tap-tests
Perl TAP 도구를 사용하여 테스트를 활성화합니다. 여기에는 Perl 토토 커뮤니티 및 Perl 모듈이 필요합니다ipc :: run
. 참조PostgreSQL : 문서 : 14 : 33.4. 탭 토토 커뮤니티자세한 내용은
--enable-depend
자동 종속성 추적을 활성화합니다. 이 옵션을 사용하면 헤더 파일이 변경되면 영향을받는 모든 객체 파일이 재건되도록 makefiles가 설정됩니다. 이것은 개발 작업을 수행하는 경우 유용하지만 한 번만 컴파일하고 토토 커뮤니티하려는 경우 오버 헤드 낭비입니다. 현재이 옵션은 GCC에서만 작동합니다.
-enable-coverage
GCC를 사용하는 경우 모든 프로그램과 라이브러리에는 코드 커버리지 테스트 기기가 컴파일됩니다. 실행되면 코드 커버리지 메트릭으로 빌드 디렉토리에서 파일을 생성합니다.참조롤 토토 커뮤니티 : 문서 : 14 : 33.5. 테스트 범위 시험자세한 내용은이 옵션은 GCC와 개발 작업을 수행 할 때만 사용됩니다.
-enable-profiling
GCC를 사용하는 경우 모든 프로그램과 라이브러리가 편집되어 프로파일 링 할 수 있습니다. 백엔드 출구시를 포함하는 서브 디렉토리가 생성됩니다.gmon.out
프로필 데이터를 포함하는 파일. 이 옵션은 GCC와 함께 사용하고 개발 작업을 수행 할 때만 사용됩니다.
-enable-dtrace
컴파일PostgreSQL동적 추적 도구 DTRACE를 지원합니다.참조범퍼카 토토 커뮤니티 PostgreSQL : 문서 : 14 : 28.5. 동적 추적자세한 내용은
dtrace
프로그램, 환경 변수dtrace
를 설정할 수 있습니다. 이것은 종종 필요할 것입니다dtrace
일반적으로/usr/sbin
PATH
.
추가 명령 줄 옵션dtrace
프로그램을 환경 변수에 지정할 수 있습니다dtraceflags
. Solaris에서는 64 비트 바이너리에 dtrace 지원을 포함 시키려면를 지정해야합니다.dtraceflags = "-64"
. 예를 들어 GCC 컴파일러 사용 :
./configure cc = 'gcc -m64'-enable-dtrace dtraceflags = '-64'...
Sun 's Compiler 토토 커뮤니티 :
./configure cc = '/opt/sunwspro/bin/cc -xtarget = aviL64'-enable-dtrace dtraceflags = '-64'...
구성
환경 변수위에서 설명한 일반 명령 줄 옵션 외에도구성
여러 환경 변수에 응답합니다. 에서 환경 변수를 지정할 수 있습니다.구성
명령 줄, 예 :
./configure cc =/opt/bin/gcc cflags = ' -o2 -pipe'
이 사용에서 환경 변수는 명령 줄 옵션과 거의 다릅니다. 그러한 변수를 미리 설정할 수도 있습니다.
내보내기 CC =/opt/bin/gcc
내보내기 cflags = '-O2 -Pipe'
./configure
많은 프로그램의 구성 스크립트가 비슷한 방식으로 이러한 변수에 응답하기 때문에이 사용법은 편리 할 수 있습니다.
이러한 환경 변수에서 가장 일반적으로 사용되는 것은입니다.CC
및cflags
. C 컴파일러를 선호하는 경우구성
선택, 변수를 설정할 수 있습니다CC
선택한 프로그램에. 기본적으로구성
선택GCC
사용 가능한 경우 플랫폼의 기본값 (일반적으로CC
). 마찬가지로 필요한 경우 기본 컴파일러 플래그를 재정의 할 수 있습니다.cflags
변수.
다음은 이러한 방식으로 설정할 수있는 중요한 변수 목록입니다.
Bison
Bison Program
CC
C 컴파일러
cflags
C 컴파일러로 전달할 옵션
Clang
경로Clang
컴파일 할 때 인라인을위한 소스 코드를 처리하는 데 사용되는 프로그램-with-llvm
CPP
C Preprocessor
CPPFLAGS
C Preprocessor로 전달할 옵션
CXX
C ++ 컴파일러
CXXFLAGS
C ++ 컴파일러로 전달할 옵션
dtrace
위치의 위치dtrace
프로그램
dtraceflags
전달 옵션dtrace
프로그램
Flex
플렉스 프로그램
ldflags
실행 파일 또는 공유 라이브러리를 연결할 때 사용할 옵션
ldflags_ex
실행 파일을 연결하기위한 추가 옵션 전용
ldflags_sl
공유 라이브러리 연결을위한 추가 옵션 전용
LLVM_CONFIG
llvm-config
찾기 위해 사용되는 프로그램LLVM토토 커뮤니티
msgfmt
msgfmt
모국어 지원 프로그램
Perl
Perl 통역 프로그램. 이것은 pl/perl을 구축하기위한 종속성을 결정하는 데 사용됩니다. 기본값은Perl
.
Python
Python 통역사 프로그램. 이것은 PL/Python 구축의 종속성을 결정하는 데 사용됩니다. 또한, 여기에 Python 2 또는 3이 지정되는지 (또는 암시 적으로 선택된) PL/Python 언어의 변형이 사용 가능한지 결정합니다. 보다PostgreSQL : 문서 : 14 : 46.1. 토토 베이 2 vs. 토토 베이 3자세한 내용은. 이것이 설정되지 않은 경우 다음이 순서대로 조사됩니다.Python Python3 Python2
.
tclsh
TCL 통역사 프로그램. 이것은 PL/TCL을 구축하는 데 의존성을 결정하는 데 사용됩니다. 이것이 설정되지 않은 경우 다음이 순서대로 조사됩니다.TCLSH TCL TCLSH8.6 TCLSH86 TCLSH8.5 TCLSH85 TCLSH8.4 TCLSH84
.
XML2_CONFIG
XML2-CONFIG
libxml2 토토 커뮤니티를 찾는 데 사용되는 프로그램
때로는에 의해 선택된 세트에 컴파일러 플래그를 추가하는 것이 유용합니다구성
. 중요한 예는GCC's-werror
옵션은에 포함될 수 없습니다.cflags
통과구성
, 많은 부분을 깨뜨릴 것이기 때문에구성
의 내장 테스트. 그러한 깃발을 추가하려면에 포함 시키십시오Copt
실행 중 환경 변수만들기
. 의 내용Copt
두 가지 모두에 추가됩니다cflags
andldflags
옵션에 의해 설정구성
. 예를 들어, 할 수 있습니다
make copt = '-werror'
또는
Export Copt = '-Werror'
만들기
GCC를 사용하는 경우 최적화 수준으로 구축하는 것이 가장 좋습니다-o1
, 최적화가 없기 때문에 (-o0
)는 몇 가지 중요한 컴파일러 경고 (예 : 비 초기 변수 사용)를 비활성화합니다. 그러나 0이 아닌 최적화 수준은 컴파일 된 코드를 밟는 것이 일반적으로 소스 코드 라인과 일대일 일치하지 않기 때문에 디버깅을 복잡하게 할 수 있습니다. 최적화 된 코드를 디버그하려고하는 동안 혼란 스러우면 관심있는 특정 파일을 다시 컴파일하십시오.-o0
. 이를 수행하는 쉬운 방법은 옵션을 전달하는 것입니다.만들기: 프로필 만들기 = -o0 file.o
.
theCopt
and프로파일
환경 변수는 실제로에 의해 동일하게 처리됩니다.PostgreSQLmakefiles. 사용하는 것은 선호도의 문제이지만 개발자들 사이의 일반적인 습관은 사용하는 것입니다프로파일
일회성 플래그 조정의 경우Copt
항상 유지 될 수 있습니다.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면