17.4. 토토 커뮤니티 절차

  1. 구성

    토토 커뮤니티 절차의 첫 번째 단계는 시스템의 소스 트리를 구성하고 원하는 옵션을 선택하는 것입니다. 이것은를 실행하여 수행됩니다.구성스크립트. 기본 토토 커뮤니티의 경우 간단히 입력하십시오.

    ./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. 이들은 구성을 사용자 정의하는 추가 방법을 제공합니다.

  2. build

    빌드를 시작하려면 다음 중 하나를 입력하십시오.

    만들기
    전부 만들기
    

    (토토 커뮤니티해야gnu 만들기.) 빌드는 하드웨어에 따라 몇 분이 걸립니다.

    Documentation (HTML 및 Man Pages) 및 추가 모듈 (을 포함하여 빌드 할 수있는 모든 것을 빌드하려면).Contrib), 대신 입력 :

    세계 만들기
    

    추가 모듈을 포함하여 구축 할 수있는 모든 것을 빌드하려면 (Contrib), 그러나 문서가 없으면 대신 입력하십시오 :

    World-Bin 만들기
    

    수동으로 다른 makefile에서 빌드를 호출하려면Makelevel예를 들어 다음과 같이 0으로 설정하십시오.

    build-postgresql :
            $ (make) -c postgresql makelevel = 0 all

    그렇게하지 않으면 이상한 오류 메시지가 발생할 수 있습니다. 일반적으로 헤더 파일 누락에 대한

  3. 회귀 테스트

    토토 커뮤니티하기 전에 새로 빌드 된 서버를 테스트하려면이 시점에서 회귀 테스트를 실행할 수 있습니다. 회귀 테스트는를 확인하는 테스트 스위트입니다.PostgreSQL개발자가 기대하는 방식으로 컴퓨터에서 실행됩니다. 유형:

    확인
    

    (이것은 루트로 작동하지 않으며, 비공식적 인 토토 커뮤니티자로 토토 커뮤니티하십시오.) 참조PostgreSQL : 문서 : 14 : 33 장 회귀 토토테스트 결과 해석에 대한 자세한 정보. 같은 명령을 발행하여 나중에이 테스트를 반복 할 수 있습니다.

  4. 파일 토토 커뮤니티

    note

    기존 시스템을 업그레이드하는 경우 읽으십시오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 만들기재구성 및 재건 전. 이것이 없으면 구성 선택의 변경 사항이 필요한 곳마다 전파되지 않을 수 있습니다.

17.4.1. 구성옵션

구성의 명령 줄 옵션은 다음과 같습니다. 이 목록은 철저하지 않습니다 (사용./configure -help여기에서 다루지 않은 옵션은 교차 컴파일과 같은 고급 사용 사례를위한 것이며 표준 AutoConf 문서에 문서화되어 있습니다.

17.4.1.1. 토토 커뮤니티 위치

이러한 옵션 제어 위치토토 커뮤니티파일을 넣습니다. 그만큼-prefix옵션은 대부분의 경우 충분합니다. 특별한 요구가있는 경우이 섹션에 설명 된 다른 옵션으로 토토 커뮤니티 하위 디렉토리를 사용자 정의 할 수 있습니다. 그러나 다른 하위 디렉토리의 상대 위치를 변경하면 토토 커뮤니티가 재생 불가능할 수 있습니다. 즉, 토토 커뮤니티 후에는 이동할 수 없습니다. (그만큼mandoc위치는이 제한의 영향을받지 않습니다.) 재배치 가능한 토토 커뮤니티의 경우를 토토 커뮤니티할 수 있습니다.-disable-ratp나중에 설명 된 옵션.

--prefix =prefix

디렉토리 아래의 모든 파일 토토 커뮤니티prefix21319_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이 디렉토리 아래에 토토 커뮤니티됩니다.Manx하위 디렉터. 기본값은Datarootdir/man.

-docdir =디렉토리

을 제외하고 문서 파일을 토토 커뮤니티하기위한 루트 디렉토리를 설정합니다man페이지. 이것은 다음 옵션의 기본값 만 설정합니다. 이 옵션의 기본값은입니다.Datarootdir/doc/postgresql.

-htmldir =디렉토리

html- 형식의 문서에 대한PostgreSQL이 디렉토리에 토토 커뮤니티됩니다. 기본값은Datarootdir.

Note

토토 커뮤니티할 수 있도록 간호가 취해졌습니다PostgreSQL공유 토토 커뮤니티 위치로 (예 :/usr/local/include) 나머지 시스템의 네임 스페이스를 방해하지 않고. 첫째, 문자열/postgresql자동으로 추가됩니다Datadir, Sysconfdirdocdir, 완전히 확장 된 디렉토리 이름이 이미 문자열을 포함하지 않는 한Postgres또는PGSQL. 예를 들어, 선택한 경우/usr/local접두사로 문서가 토토 커뮤니티됩니다/usr/local/doc/postgresql, 그러나 접두사가있는 경우/opt/postgres/opt/postgres/doc. 클라이언트 인터페이스의 공개 C 헤더 파일이에 토토 커뮤니티됩니다.포함그리고 네임 스페이스 청소입니다. 내부 헤더 파일과 서버 헤더 파일은의 개인 디렉토리에 토토 커뮤니티됩니다.포함. 헤더 파일에 액세스하는 방법에 대한 정보는 각 인터페이스의 문서를 참조하십시오. 마지막으로, 개인 서브 디렉토리도 적절한 경우에 따라 생성됩니다.Libdir동적으로로드 가능한 모듈의 경우.

17.4.1.2. PostgreSQL기능

이 섹션에 설명 된 옵션은 다양한 구축을 가능하게합니다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_cflagsandicu_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-includesand-with-libraries이 옵션 외에도.구성필요한 헤더 파일 및 라이브러리를 확인하여 진행하기 전에 GSSAPI 토토 커뮤니티가 충분한 지 확인합니다.

-with-ldap

빌드LDAP인증 및 연결 매개 변수 조회 지원 (참조PostgreSQL : 문서 : 14 : 34.18. 무지개 토토 연결 매개 변수 조회andPostgreSQL : 문서 : 14 : 21.10. 토토 캔 인증자세한 내용은). 유닉스에서는이 필요합니다.OpenLdap토토 커뮤니티할 패키지. Windows에서 기본값winldap라이브러리가 토토 커뮤니티됩니다.구성필요한 헤더 파일 및 라이브러리를 확인하여 귀하의OpenLdap진행하기 전에 토토 커뮤니티가 충분합니다.

-with-pam

빌드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를 생성하는 기능을 제공합니다. 도서관

  • BSDfreebsd 및 기타 BSD 유래 시스템에있는 UUID 함수를 토토 커뮤니티하려면

  • E2FSE2FSPROGS프로젝트; 이 라이브러리는 대부분의 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-CONFIG40874_40945pkg-config는 다중 아키텍처 토토 커뮤니티를 더 잘 처리 할 수 있기 때문에 선호됩니다.

특이한 위치에있는 libxml2 토토 커뮤니티를 토토 커뮤니티하려면 설정할 수 있습니다pkg-config관련 환경 변수 (문서 참조) 또는 환경 변수 설정XML2_CONFIGXML2-CONFIGlibxml2 토토 커뮤니티에 속하는 프로그램 또는 변수를 설정XML2_CFLAGSXML2_LIBS. (만약에pkg-config가 토토 커뮤니티된 다음 libxml2가 어디에 있는지에 대한 아이디어를 무시하려면XML2_CONFIG또는 둘 다 설정XML2_CFLAGSandXML2_LIBS비어 있지 않은 문자열에.)

-with-libxslt

libxslt를 사용하여 빌드하여 활성화토토 캔 PostgreSQL : 문서 : 14 : F.47. XML2XML의 XSL 변환을 수행 할 모듈-with-libxml지정해야합니다.

17.4.1.3. 반사

이 섹션에 설명 된 옵션은 특정 비활성화를 허용합니다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개인 연결 핸들을 안전하게 제어하는 프로그램. 스레딩 지원이 부족한 플랫폼에서만 토토 커뮤니티하십시오.

17.4.1.4. 프로세스 세부 사항 구축

-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

부록StringPostgreSQL 버전 번호로. 예를 들어, 미공개 git 스냅 샷으로 구축 된 바이너리를 표시하거나 A와 같은 추가 버전 문자열이 포함 된 사용자 정의 패치를 포함하는 데 토토 커뮤니티할 수 있습니다.git 설명식별자 또는 배포 패키지 릴리스 번호.

-disable-ratp

마크하지 마십시오PostgreSQL의 실행 파일은 토토 커뮤니티의 라이브러리 디렉토리에서 공유 라이브러리를 검색해야 함을 나타 내기 위해 실행 가능합니다 (참조-libdir). 대부분의 플랫폼 에서이 마킹은 라이브러리 디렉토리의 절대 경로를 사용하므로 나중에 토토 커뮤니티를 재배치하면 도움이되지 않습니다. 그러나 실행 파일이 공유 라이브러리를 찾을 수있는 다른 방법을 제공해야합니다. 일반적으로 라이브러리 디렉토리를 검색하려면 운영 체제의 동적 링커를 구성해야합니다. 보다섹션 17.5.1자세한 내용은

17.4.1.5. 여러 가지 잡다한

특히 테스트 빌드의 경우 기본 포트 번호를 |-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다른 월 블록 크기가 다른 빌드로 업그레이드하려면

17.4.1.6. 개발자 옵션

이 섹션의 대부분의 옵션은 개발 또는 디버깅에만 관심이 있습니다PostgreSQL. 을 제외하고는 생산 빌드에 권장되지 않습니다.--enable-debug, 버그가 발생하는 운이 좋은 이벤트에서 자세한 버그 보고서를 활성화하는 데 유용 할 수 있습니다. dtrace를 지원하는 플랫폼에서-enable-dtrace생산에 토토 커뮤니티하는 것이 합리적 일 수 있습니다.

서버 내부에서 코드를 개발하는 데 사용되는 토토 커뮤니티를 구축 할 때 최소한 옵션을 사용하는 것이 좋습니다-enable-debugand-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/sbinPATH.

추가 명령 줄 옵션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'...

17.4.2. 구성환경 변수

위에서 설명한 일반 명령 줄 옵션 외에도구성여러 환경 변수에 응답합니다. 에서 환경 변수를 지정할 수 있습니다.구성명령 줄, 예 :

./configure cc =/opt/bin/gcc cflags = ' -o2 -pipe'

이 사용에서 환경 변수는 명령 줄 옵션과 거의 다릅니다. 그러한 변수를 미리 설정할 수도 있습니다.

내보내기 CC =/opt/bin/gcc
내보내기 cflags = '-O2 -Pipe'
./configure

많은 프로그램의 구성 스크립트가 비슷한 방식으로 이러한 변수에 응답하기 때문에이 사용법은 편리 할 수 있습니다.

이러한 환경 변수에서 가장 일반적으로 사용되는 것은입니다.CCcflags. 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-CONFIGlibxml2 토토 커뮤니티를 찾는 데 사용되는 프로그램

때로는에 의해 선택된 세트에 컴파일러 플래그를 추가하는 것이 유용합니다구성. 중요한 예는GCC's-werror옵션은에 포함될 수 없습니다.cflags통과구성, 많은 부분을 깨뜨릴 것이기 때문에구성의 내장 테스트. 그러한 깃발을 추가하려면에 포함 시키십시오Copt실행 중 환경 변수만들기. 의 내용Copt두 가지 모두에 추가됩니다cflagsandldflags옵션에 의해 설정구성. 예를 들어, 할 수 있습니다

make copt = '-werror'

또는

Export Copt = '-Werror'
만들기

Note

GCC를 사용하는 경우 최적화 수준으로 구축하는 것이 가장 좋습니다-o1, 최적화가 없기 때문에 (-o0)는 몇 가지 중요한 컴파일러 경고 (예 : 비 초기 변수 사용)를 비활성화합니다. 그러나 0이 아닌 최적화 수준은 컴파일 된 코드를 밟는 것이 일반적으로 소스 코드 라인과 일대일 일치하지 않기 때문에 디버깅을 복잡하게 할 수 있습니다. 최적화 된 코드를 디버그하려고하는 동안 혼란 스러우면 관심있는 특정 파일을 다시 컴파일하십시오.-o0. 이를 수행하는 쉬운 방법은 옵션을 전달하는 것입니다.만들기: 프로필 만들기 = -o0 file.o.

theCoptand프로파일환경 변수는 실제로에 의해 동일하게 처리됩니다.PostgreSQLmakefiles. 사용하는 것은 선호도의 문제이지만 개발자들 사이의 일반적인 습관은 사용하는 것입니다프로파일일회성 플래그 조정의 경우Copt항상 유지 될 수 있습니다.

수정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 귀하의 경험 또는 추가 설명이 필요합니다. 사용이 양식문서 문제를보고하려면