구성
토토 커뮤니티 절차의 첫 번째 단계는 시스템의 소스 트리를 구성하고 원하는 옵션을 선택하는 것입니다. 이것은를 실행하여 수행됩니다.구성
스크립트. 기본 토토 커뮤니티의 경우 간단히 입력하십시오.
./configure
이 스크립트는 다양한 시스템 의존 변수에 대한 값을 결정하고 운영 체제의 단점을 감지하기 위해 여러 테스트를 실행하고 마지막으로 빌드 트리에서 여러 파일을 생성하여 찾은 내용을 기록합니다..
당신도 실행할 수 있습니다구성
소스 트리 외부의 디렉토리에서 빌드 디렉토리를 원래 소스 파일과 별도로 유지하려면 빌드를 작성하십시오. 이 절차는 a라고합니다.vpath빌드. 방법은 다음과 같습니다.
mkdir build_dir
cd build_dir
/path/to/source/tree/구성 [옵션 여기 이동]
make
기본 구성은 서버 및 유틸리티뿐만 아니라 C 컴파일러 만 필요한 모든 클라이언트 응용 프로그램 및 인터페이스를 구축합니다. 모든 파일이에 토토 커뮤니티됩니다./usr/local/pgsql
기본적으로.
하나 이상의 명령 줄 옵션을 제공하여 빌드 및 토토 커뮤니티 프로세스를 사용자 정의 할 수 있습니다구성
. 일반적으로 토토 커뮤니티 위치 또는 구축 된 선택적 기능 세트를 사용자 정의합니다.구성
많은 옵션이 있으며섹션 17.4.1.
또한구성
에 설명 된대로 특정 환경 변수에 응답합니다.섹션 17.4.2. 이들은 구성을 사용자 정의하는 추가 방법을 제공합니다.
build
빌드를 시작하려면 다음 중 하나를 입력하십시오.
make
전부 만들기
(사용해야gnu make.) 빌드는 하드웨어에 따라 몇 분이 걸립니다.
Documentation (HTML 및 Man Pages) 및 추가 모듈 (을 포함하여 빌드 할 수있는 모든 것을 빌드하려면Contrib
), 대신 유형 :
세계 만들기
추가 모듈을 포함하여 구축 할 수있는 모든 것을 빌드하려면 (Contrib
), 그러나 문서가 없으면 대신 입력하십시오 :
World-Bin 만들기
수동으로 다른 makefile에서 빌드를 호출하려면Makelevel
예를 들어 다음과 같이 0으로 설정하십시오.
build-postgresql :
그렇게하지 않으면 이상한 오류 메시지, 일반적으로 누락 된 헤더 파일에 대한 이상한 오류 메시지로 이어질 수 있습니다.
회귀 테스트
토토 커뮤니티하기 전에 새로 빌드 된 서버를 테스트하려면이 시점에서 회귀 테스트를 실행할 수 있습니다. 회귀 테스트는를 확인하는 테스트 스위트입니다.postgresql개발자가 예상하는 방식으로 컴퓨터에서 실행됩니다. 유형:
확인
(이것은 루트로 작동하지 않으며, 비공식적 인 사용자로 사용하십시오.) 참조제 33 장테스트 결과 해석에 대한 자세한 정보. 같은 명령을 발행하여 나중에이 테스트를 반복 할 수 있습니다.
파일 토토 커뮤니티
기존 시스템을 업그레이드하는 경우 읽으십시오PostgreSQL : 문서 : 14 : 19.6. PostgreSQL 클러스터 메이저 토토 사이트, 클러스터 업그레이드에 대한 지침이 있습니다.
토토 커뮤니티하려면postgresqlenter :
토토 커뮤니티
이것은에 지정된 디렉토리에 파일을 토토 커뮤니티합니다.1 단계. 해당 영역에 적절한 권한이 있는지 확인하십시오.
문서를 토토 커뮤니티하려면 (html 및 man pages)를 입력하십시오 :
토토 커뮤니티 DOCS 만들기
위의 세계를 건설 한 경우 대신 입력하십시오 :
토토 커뮤니티 세계 만들기
이것은 또한 문서를 토토 커뮤니티합니다.
위의 문서없이 세계를 건설 한 경우 대신 입력하십시오.
토토 커뮤니티 세계 만들기
사용할 수 있습니다토토 커뮤니티-스트립 만들기
대신토토 커뮤니티
실행 파일과 라이브러리가 토토 커뮤니티 될 때 마무리합니다. 이것은 약간의 공간을 절약 할 것입니다.토토 커뮤니티-스트립
합리적인 작업 절약 공간을 만들려고하지만 실행 파일에서 불필요한 바이트를 제거하는 방법에 대한 완벽한 지식은 없으므로 가능한 모든 디스크 공간을 저장하려면 수동 작업을 수행해야합니다..
표준 토토 커뮤니티는 클라이언트 애플리케이션 개발 및 CONTID 기능 또는 CO와 같은 서버 측 프로그램 개발에 필요한 모든 헤더 파일을 제공합니다.
클라이언트 전용 토토 커뮤니티 :클라이언트 응용 프로그램 및 인터페이스 라이브러리 만 토토 커뮤니티하려면 다음 명령을 사용할 수 있습니다.
-C SRC/BIN 토토 커뮤니티 제작
-C SRC/include install
-C SRC/인터페이스 토토 커뮤니티
-C Doc 토토 커뮤니티 만들기
SRC/BIN
서버 전용 사용을위한 몇 가지 바이너리가 있지만 작습니다.
토토 커뮤니티 :토토 커뮤니티를 취소하려면 명령을 사용하십시오제거 해제
. 그러나 이것은 생성 된 디렉토리를 제거하지 않습니다.
청소 :토토 커뮤니티 후 소스 트리에서 내장 된 파일을 명령으로 제거하여 디스크 공간을 제거 할 수 있습니다.깨끗하게 만들기
. 이것은에 의해 만든 파일을 보존합니다.구성
프로그램, 모든 것을 재건 할 수 있도록make
나중에. 소스 트리를 분포 된 상태로 재설정하려면 사용Distclean 만들기
. 동일한 소스 트리 내의 여러 플랫폼을 위해 빌드하려면이 작업을 수행하고 각 플랫폼에 대해 다시 구성해야합니다.
빌드를 수행 한 다음를 발견하면구성
옵션이 잘못되었거나, 변경하면구성
조사 (예 : 소프트웨어 업그레이드)를 조사하면 좋은 생각입니다Distclean 만들기
재구성 및 재건 전. 이것이 없으면 구성 선택의 변경 사항이 필요한 곳마다 전파되지 않을 수 있습니다.
구성
옵션구성
의 명령 줄 옵션은 다음과 같습니다. 이 목록은 철저하지 않습니다 (사용./configure -help
여기에서 다루지 않은 옵션은 교차 컴파일과 같은 고급 사용 사례를위한 것이며 표준 AutoConf 문서에 문서화되어 있습니다.
이 옵션 제어 위치토토 커뮤니티
파일을 넣습니다. 그만큼-prefix
옵션은 대부분의 경우 충분합니다. 특별한 요구가있는 경우이 섹션에 설명 된 다른 옵션으로 토토 커뮤니티 하위 디렉토리를 사용자 정의 할 수 있습니다.man
및doc
위치는이 제한의 영향을받지 않습니다.) 재배치 가능한 토토 커뮤니티의 경우를 사용하고 싶을 수도 있습니다.-disable-ratp
나중에 설명 된 옵션.
-prefix =접두사
디렉토리의 모든 파일 토토 커뮤니티접두사
대신/usr/local/pgsql
. 실제 파일은 다양한 하위 디렉터로 토토 커뮤니티됩니다.접두사
디렉토리.
--exec-prefix =exec-prefix
다른 접두사 아래에 아키텍처 의존 파일을 토토 커뮤니티할 수 있습니다.exec-prefix
, 무엇보다접두사
이것은 호스트간에 아키텍처 독립적 파일을 공유하는 데 유용 할 수 있습니다.exec-prefix
접두사
그리고 아키텍처 의존 및 독립 파일 모두 같은 트리 아래에 토토 커뮤니티 될 것입니다. 아마도 원하는 것일 것입니다.
--- bindir =디렉토리
실행 가능한 프로그램의 디렉토리를 지정합니다. 기본값은
, 이것은 일반적으로 의미exec-prefix
/bin/usr/local/pgsql/bin
.
-sysconfdir =디렉토리
다양한 구성 파일의 디렉토리를 설정합니다.
기본적으로.접두사
/etc
-libdir =디렉토리
라이브러리 및 동적으로로드 가능한 모듈을 토토 커뮤니티할 위치를 설정합니다. 기본값은
.exec-prefix
/lib
-includedir =디렉토리
C 및 C ++ 헤더 파일을 토토 커뮤니티하기위한 디렉토리를 설정합니다. 기본값은
.접두사
/include
-datarootdir =디렉토리
다양한 유형의 읽기 전용 데이터 파일에 대한 루트 디렉토리를 설정합니다. 다음 옵션 중 일부에 대한 기본값 만 설정합니다.
.접두사
/share
-datadir =디렉토리
토토 커뮤니티된 프로그램에서 사용하는 읽기 전용 데이터 파일의 디렉토리를 설정합니다. 기본값은
. 데이터베이스 파일이 배치 될 위치와 관련이 없습니다.Datarootdir
-로컬 레디르 =디렉토리
특정 메시지 변환 카탈로그 파일에서 로케일 데이터 토토 커뮤니티 디렉토리를 설정합니다. 기본값은
.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기본적으로 구축되지 않은 기능. 이들 중 대부분은에 설명 된 바와 같이 추가 소프트웨어가 필요하기 때문에 비 분제입니다.섹션 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
및icu_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 =Library
지원을 통해 빌드SSL(암호화) 연결. 유일한Library
지원 된 ISOpenSSL
. 이것은 필요합니다OpenSSL토토 커뮤니티할 패키지.구성
필요한 헤더 파일 및 라이브러리를 확인하여 귀하의OpenSSL진행하기 전에 토토 커뮤니티가 충분합니다.
-With-OpensSL
쓸데없는 동등한-with-ssl = OpenSSL
.
-with-gssapi
GSSAPI 인증을 지원하는 빌드. 많은 시스템에서 GSSAPI 시스템 (일반적으로 Kerberos 토토 커뮤니티의 일부)은 기본적으로 검색되는 위치에 토토 커뮤니티되어 있지 않습니다 (예 :/usr/include
, /usr/lib
), 옵션을 사용해야합니다-with-includes
및-with-libraries
이 옵션 외에도.구성
필요한 헤더 파일 및 라이브러리를 확인하여 진행하기 전에 GSSAPI 토토 커뮤니티가 충분했는지 확인합니다.
-with-ldap
빌드LDAP인증 및 연결 매개 변수 조회 지원 (참조섹션 34.18및섹션 21.10자세한 내용은). 유닉스에서는이 필요합니다.OpenLdap토토 커뮤니티할 패키지. Windows에서 기본값winldap라이브러리가 사용됩니다.구성
필요한 헤더 파일 및 라이브러리를 확인하여 귀하의OpenLdap진행하기 전에 토토 커뮤니티가 충분합니다.
-with-pam
-with-bsd-auth
BSD 인증 지원이 포함 된 빌드. (BSD 인증 프레임 워크는 현재 OpenBSD에서만 사용할 수 있습니다.)
-with-systemd
지원을 통해 빌드SystemD서비스 알림. 서버가 시작되면 통합이 향상됩니다SystemD그러나 그렇지 않으면 영향을 미치지 않습니다; 보다섹션 19.3자세한 내용은. libsystemd이 옵션을 사용하려면 관련 헤더 파일을 토토 커뮤니티해야합니다.
-with-bonjour
Bonjour Automatic Service Discovery를 지원하는 빌드. 이를 위해서는 운영 체제에서 Bonjour 지원이 필요합니다.
-with-uuid =Library
빌드PostgreSQL : 문서 : 14 : F.46. 스포츠 토토-sossp모듈 (지정된 UUID 라이브러리를 사용하여 UUID를 생성하기위한 기능을 제공). Library
|
BSD
freebsd 및 기타 BSD 유래 시스템에있는 UUID 함수를 사용하려면
E2FS
e2FSPROG
프로젝트; 이 라이브러리는 대부분의 Linux 시스템과 MacOS에 있으며 다른 플랫폼에 대해서도 얻을 수 있습니다
OSSP
사용하려면OSSP UUID 라이브러리
-with-sossp-uuid
쓸데없는 동등한-with-uuid = ossp
.
-with-libxml
libxml2를 사용하여 빌드하여 SQL/XML 지원이 가능합니다. 이 기능에는 libxml2 버전 2.6.23 이상이 필요합니다.
필요한 컴파일러 및 링커 옵션을 감지하려면 PostgreSQL이 쿼리됩니다pkg-config
, 그것이 토토 커뮤니티되어 있고 libxml2에 대해 알고 있다면. 그렇지 않으면 프로그램XML2-CONFIG
33203_33271pkg-config
다중 아키텍처 토토 커뮤니티를 더 잘 처리 할 수 있기 때문에 선호됩니다.
비정상적인 위치에있는 libxml2 토토 커뮤니티를 사용하려면 설정할 수 있습니다pkg-config
관련 환경 변수 (문서 참조) 또는 환경 변수 설정XML2_CONFIG
XML2-CONFIG
libxml2 토토 커뮤니티에 속하는 프로그램 또는 변수를 설정XML2_CFLAGS
및XML2_LIBS
. (만약에pkg-config
가 토토 커뮤니티된 다음 libxml2가 어디에 있는지에 대한 아이디어를 무시하려면XML2_CONFIG
또는 둘 다 설정XML2_CFLAGS
및XML2_LIBS
비어 있지 않은 문자열에.)
-with-libxslt
libxslt를 사용하여 빌드하여 활성화XML2XML의 XSL 변환을 수행 할 모듈-with-libxml
지정해야합니다.
이 섹션에 설명 된 옵션은 특정 비활성화를 허용합니다postgresql기본적으로 구축되었지만 필요한 소프트웨어 또는 시스템 기능을 사용할 수없는 경우 해제해야 할 기능. 이 옵션 사용은 실제로 필요한 경우가 아니라면 권장하지 않습니다.
-without-Readline
사용 방지Readline도서관 (및libedit). 이 옵션은 명령 줄 편집 및 히스토랑을 비활성화합니다PSQL.
-with-libedit-preferred
BSD 라이센스의 사용을 선호libeditGPL 라이센스가 아닌 라이브러리Readline. 이 옵션은 두 라이브러리가 토토 커뮤니티된 경우에만 중요합니다.Readline.
-without-zlib
사용 방지Zlib라이브러리. 이것은 압축 아카이브에 대한 지원을 비활성화합니다pg_dump및PG_RESTORE.
-disable-spinlocks
postgresql플랫폼에 대한 CPU 스핀 록 지원이 없습니다. 스핀 락지지가 부족하면 성능이 저하됩니다.postgresql플랫폼에서 문제를에보고하십시오.postgresql개발자.
-disable-acomics
CPU 원자 작업 사용 비활성화. 이 옵션은 그러한 작업이 부족한 플랫폼에서 아무것도하지 않습니다.
-드리 스레드-안전
클라이언트 라이브러리의 스레드 안전성을 비활성화합니다. 이것은 동시 스레드를 방지합니다libpq및ECPG개인 연결 핸들을 안전하게 제어하는 프로그램. 스레딩 지원이 부족한 플랫폼에서만 사용하십시오.
-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 패키지를 업그레이드 할 필요가 없다는 것입니다.
-with-extra-version =String
부록String
PostgreSQL 버전 번호로. 예를 들어, 미공개 git 스냅 샷으로 구축 된 바이너리를 표시하거나 A와 같은 추가 버전 문자열이 포함 된 사용자 정의 패치를 포함하는 데 사용할 수 있습니다.git destion
식별자 또는 배포 패키지 릴리스 번호.
-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
설정세그먼트 크기, 기가 바이트. 큰 테이블은 여러 작동 시스템 파일로 나뉘며 각 크기는 세그먼트 크기와 같습니다.“LAGONFILE”지원 (현재 대부분의 경우)은 더 큰 세그먼트 크기를 사용할 수 있습니다. 이것은 매우 큰 테이블로 작업 할 때 소비되는 파일 설명 자의 수를 줄이는 데 도움이 될 수 있습니다.타르, 유용한 파일 크기에 제한을 설정할 수도 있습니다. 이 값은 절대적으로 요구되지는 않지만 2의 전력이라는 것이 좋습니다.이 값을 변경하면 온 디스크 데이터베이스 호환성이 나옵니다.pg_upgrade
다른 세그먼트 크기가 다른 빌드로 업그레이드하려면
-with-blocksize =Blocksize
설정블록 크기, 킬로 바이트. 이것은 테이블 내의 저장 장치 및 I/O입니다.pg_upgrade
다른 블록 크기가 다른 빌드로 업그레이드하려면
-with-blocksize =Blocksize
설정WAL 블록 크기52472_52804pg_upgrade
다른 월 블록 크기가 다른 빌드로 업그레이드하려면
이 섹션의 대부분의 옵션은 개발 또는 디버깅에만 관심이 있습니다postgresql. 을 제외하고는 생산 빌드에 권장되지 않습니다.-enable-debug
, 버그가 발생한 운이 좋은 이벤트에서 자세한 버그 보고서를 활성화하는 데 유용 할 수 있습니다. dtrace를 지원하는 플랫폼에서-enable-dtrace
생산에 사용하는 것이 합리적 일 수 있습니다.
서버 내부에서 코드를 개발하는 데 사용될 토토 커뮤니티를 구축 할 때 최소한 옵션을 사용하는 것이 좋습니다-enable-debug
및-enable-cassert
.
-enable-debug
디버깅 기호로 모든 프로그램과 라이브러리를 컴파일합니다. 즉, 문제를 분석하기 위해 디버거에서 프로그램을 실행할 수 있습니다.
-enable-cassert
활성화어제서버에서 확인하여 많은 것을 테스트합니다“일어날 수 없습니다”조건. 이는 코드 개발 목적으로 매우 중요하지만 테스트는 서버의 속도를 크게 늦출 수 있습니다.
-enable-tap-tests
Perl TAP 도구를 사용하여 테스트를 활성화합니다. 여기에는 Perl 토토 커뮤니티 및 Perl 모듈이 필요합니다ipc :: run
. 참조PostgreSQL : 문서 : 14 : 33.4. 탭 토토 커뮤니티자세한 내용은
--enable-depend
자동 종속성 추적을 활성화합니다. 이 옵션을 사용하면 헤더 파일이 변경되면 영향을받는 모든 객체 파일이 재건되도록 makefiles가 설정됩니다.
-enable-coverage
GCC를 사용하는 경우 모든 프로그램과 라이브러리에는 코드 적용 범위 테스트 계측이 편집됩니다. 실행되면 코드 커버리지 메트릭으로 빌드 디렉토리에서 파일을 생성합니다.참조섹션 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 전 처리기
CPPFLAGS
C 사전 프로세서로 전달할 옵션
CXX
C ++ 컴파일러
CXXFLAGS
C ++ 컴파일러로 전달할 옵션
dtrace
위치의 위치dtrace
프로그램
dtraceflags
전달 옵션dtrace
프로그램
Flex
Flex Program
ldflags
실행 파일 또는 공유 라이브러리를 연결할 때 사용할 옵션
ldflags_ex
실행 파일 연결을위한 추가 옵션
ldflags_sl
공유 라이브러리 연결을위한 추가 옵션 전용
LLVM_CONFIG
llvm-config
찾는 데 사용되는 프로그램LLVM토토 커뮤니티
msgfmt
msgfmt
모국어 지원 프로그램
Perl
Perl 통역사 프로그램. 이것은 pl/perl을 구축하기위한 종속성을 결정하는 데 사용됩니다.Perl
.
Python
Python 통역사 프로그램. 이것은 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
실행 중 환경 변수make
. 의 내용Copt
두 가지 모두에 추가됩니다cflags
및ldflags
옵션에 의해 설정구성
. 예를 들어, 할 수 있습니다
make copt = '-werror'
또는
Export Copt = '-Werror'
make
GCC를 사용하는 경우 최적화 수준으로 구축하는 것이 가장 좋습니다-o1
, 최적화가 없기 때문에 (-o0
)는 몇 가지 중요한 컴파일러 경고 (예 : 비 초기 변수 사용)를 비활성화합니다. 그러나 0이 아닌 최적화 수준은 컴파일 된 코드를 밟는 것이 일반적으로 소스 코드 라인과 일대일 일치하지 않기 때문에 디버깅을 복잡하게 할 수 있습니다.-o0
. 이를 수행하는 쉬운 방법은 옵션을 전달하는 것입니다.make: 프로파일 만들기 = -o0 file.o
.
theCopt
및프로파일
환경 변수는 실제로에 의해 동일하게 처리됩니다.postgresqlmakefiles. 사용하는 것은 선호도의 문제이지만 개발자들 사이의 일반적인 습관은 사용하는 것입니다프로파일
일회성 플래그 조정의 경우Copt
항상 유지 될 수 있습니다.
올바른 문서에 아무것도 표시되면 일치하지 않습니다.이 양식문서 문제를보고하려면