이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

15.4. 토토 베이 절차

  1. 구성

    설치 절차의 첫 번째 단계는 시스템의 소스 트리를 구성하고 원하는 옵션을 선택하는 것입니다. 이는 다음을 실행하여 수행됩니다.구성스크립트. 기본 설치의 경우 다음을 입력하면 됩니다.

    ./구성

    이 스크립트는 다양한 시스템 종속 변수의 값을 결정하고 운영 체제의 모든 문제를 감지하기 위해 여러 테스트를 실행하며 마지막으로 발견된 내용을 기록하기 위해 빌드 트리에 여러 파일을 생성합니다. 실행할 수도 있습니다.구성빌드 디렉토리를 별도로 유지하려는 경우 소스 트리 외부 디렉토리에 있습니다. 이 절차는 a라고도 합니다.VPATH빌드. 방법은 다음과 같습니다.

    mkdir build_dir
    cd build_dir
    /path/to/source/tree/configure [옵션은 여기로 이동]
    만들다

    기본 구성은 서버와 유틸리티는 물론 C 컴파일러만 필요한 모든 클라이언트 응용 프로그램과 인터페이스를 구축합니다. 모든 파일은 아래에 설치됩니다./usr/local/pgsql기본적으로.

    다음 명령줄 옵션 중 하나 이상을 제공하여 빌드 및 설치 프로세스를 사용자 정의할 수 있습니다.구성:

    --접두사=프리픽스

    디렉토리 아래의 모든 파일 토토 베이프리픽스대신에/usr/local/pgsql. 실제 파일은 다양한 하위 디렉터리에 토토 베이됩니다. 어떤 파일도 직접 토토 베이되지 않습니다.프리픽스디렉토리.

    특별한 필요가 있는 경우 다음 옵션을 사용하여 개별 하위 디렉토리를 사용자 정의할 수도 있습니다. 그러나 이를 기본값으로 두면 설치 위치를 변경할 수 있습니다. 즉, 설치 후에 디렉터리를 이동할 수 있습니다. (그만큼남자그리고문서위치는 이에 영향을 받지 않습니다.)

    재배치 가능한 설치의 경우 다음을 사용할 수 있습니다.구성's--disable-rpath옵션. 또한 공유 라이브러리를 찾는 방법을 운영 체제에 알려야 합니다.

    --exec-prefix=EXEC-PREFIX

    다른 접두사로 아키텍처 종속 파일을 토토 베이할 수 있습니다.EXEC-PREFIX, 무엇보다프리픽스으로 설정되었습니다. 이는 호스트 간에 아키텍처 독립적인 파일을 공유하는 데 유용할 수 있습니다. 이것을 생략하면 다음과 같습니다EXEC-PREFIX다음과 동일하게 설정됨프리픽스아키텍처 종속 파일과 독립 파일 모두 동일한 트리 아래에 토토 베이되며 이는 아마도 원하는 것일 것입니다.

    --bindir=디렉토리

    실행 가능한 프로그램의 디렉토리를 지정합니다. 기본값은EXEC-PREFIX/bin, 일반적으로 다음을 의미함/usr/local/pgsql/bin.

    --sysconfdir=디렉토리

    다양한 구성 파일의 디렉토리를 설정합니다.프리픽스/기타기본적으로.

    --libdir=디렉토리

    라이브러리와 동적으로 로드 가능한 모듈을 토토 베이할 위치를 설정합니다. 기본값은EXEC-PREFIX/lib.

    --includedir=디렉토리

    C 및 C++ 헤더 파일을 토토 베이할 디렉터리를 설정합니다. 기본값은프리픽스/포함.

    --datarootdir=디렉토리

    다양한 유형의 읽기 전용 데이터 파일에 대한 루트 디렉토리를 설정합니다. 이는 다음 옵션 중 일부에 대해서만 기본값을 설정합니다. 기본값은프리픽스/공유.

    --datadir=디렉토리

    설치된 프로그램이 사용하는 읽기 전용 데이터 파일용 디렉토리를 설정합니다. 기본값은DATAROOTDIR. 이는 데이터베이스 파일이 배치될 위치와 아무 관련이 없습니다.

    --localedir=디렉토리

    로케일 데이터, 특히 메시지 번역 카탈로그 파일을 토토 베이하기 위한 디렉토리를 설정합니다. 기본값은DATAROOTDIR/locale.

    --mandir=디렉토리

    함께 제공되는 매뉴얼 페이지PostgreSQL이 디렉토리 아래 해당 디렉토리에 설치됩니다.남자x하위 디렉토리. 기본값은DATAROOTDIR/남자.

    --docdir=디렉토리

    다음을 제외한 문서 파일 토토 베이를 위한 루트 디렉토리를 설정합니다."남자"페이지. 이는 다음 옵션에 대한 기본값만 설정합니다. 이 옵션의 기본값은DATAROOTDIR/doc/postgresql.

    --htmldir=디렉토리

    다음에 대한 HTML 형식 문서PostgreSQL이 디렉토리 아래에 설치됩니다. 기본값은DATAROOTDIR.

    참고:토토 베이가 가능하도록 주의를 기울였습니다.PostgreSQL공유 토토 베이 위치(예:/usr/local/include) 시스템의 나머지 부분의 네임스페이스를 방해하지 않고. 먼저, 문자열"/postgresql"다음에 자동으로 추가됩니다.datadir, sysconfdirdocdir, 완전히 확장된 디렉토리 이름에 이미 문자열이 포함되어 있지 않은 경우"포스트그레"또는"pgsql". 예를 들어 다음을 선택하는 경우/usr/로컬접두사로서 문서는 다음 위치에 설치됩니다./usr/local/doc/postgresql, 그러나 접두사가 다음과 같은 경우/opt/postgres, 그러면 들어가겠죠/opt/postgres/doc. 클라이언트 인터페이스의 공개 C 헤더 파일은 다음 위치에 설치됩니다.포함dir그리고 네임스페이스가 깨끗합니다. 내부 헤더 파일과 서버 헤더 파일은 다음의 개인 디렉터리에 설치됩니다.포함dir. 헤더 파일에 액세스하는 방법에 대한 자세한 내용은 각 인터페이스의 설명서를 참조하세요. 마지막으로 해당하는 경우 다음 아래에 비공개 하위 디렉터리도 생성됩니다.libdir동적으로 로드 가능한 모듈의 경우.

    --추가 버전 포함=STRING

    추가STRINGPostgreSQL 버전 번호로 변경됩니다. 예를 들어, 이를 사용하여 출시되지 않은 Git 스냅샷에서 빌드된 바이너리나 a와 같은 추가 버전 문자열을 사용하여 사용자 정의 패치를 포함하는 바이너리를 표시할 수 있습니다.git 설명식별자 또는 배포 패키지 릴리스 번호.

    --with-includes=디렉토리

    디렉토리은 컴파일러가 헤더 파일을 검색하는 목록에 추가될 콜론으로 구분된 디렉터리 목록입니다. 선택적 패키지가 있는 경우(예: GNUReadline)가 비표준 위치에 토토 베이된 경우 이 옵션과 해당 옵션도 사용해야 합니다.--with-라이브러리옵션.

    예:--with-includes=/opt/gnu/include:/usr/sup/include.

    --with-libraries=디렉토리

    디렉토리는 라이브러리를 검색하기 위한 콜론으로 구분된 디렉토리 목록입니다. 아마도 이 옵션(및 해당하는을 사용해야 할 것입니다.--포함옵션) 비표준 위치에 패키지가 토토 베이된 경우.

    예:--with-libraries=/opt/gnu/lib:/usr/sup/lib.

    --enable-nls[=언어]

    모국어 지원 활성화 (NLS), 즉 영어 이외의 언어로 프로그램의 메시지를 표시하는 기능입니다.언어는 지원하려는 언어의 선택적 공백으로 구분된 코드 목록입니다. 예를 들어--enable-nls='de fr'. (귀하의 목록과 실제로 제공된 번역 집합 간의 교차점은 자동으로 계산됩니다.) 목록을 지정하지 않으면 사용 가능한 모든 번역이 토토 베이됩니다.

    이 옵션을 사용하려면 다음 구현이 필요합니다.GettextAPI; 위를 참조하세요.

    --with-pgport=NUMBER

    설정NUMBER서버 및 클라이언트의 기본 포트 번호로 사용됩니다. 기본값은 5432입니다. 포트는 나중에 언제든지 변경할 수 있지만 여기에서 지정하면 서버와 클라이언트 모두 동일한 기본값이 컴파일되어 매우 편리할 수 있습니다. 일반적으로 기본값이 아닌 값을 선택하는 유일한 이유는 여러 개를 실행하려는 경우입니다.포스트그레SQL서버가 동일한 시스템에 있습니다.

    --with-perl

    빌드PL/펄서버측 언어.

    --with-python

    빌드PL/파이썬서버측 언어.

    --with-tcl

    빌드PL/Tcl서버측 언어.

    --with-tclconfig=디렉토리

    Tcl이 파일을 토토 베이합니다.tclConfig.sh, Tcl과 인터페이스하는 모듈을 빌드하는 데 필요한 구성 정보가 포함되어 있습니다. 이 파일은 일반적으로 잘 알려진 위치에서 자동으로 발견되지만, 다른 버전의 Tcl을 사용하려는 경우 해당 파일을 찾을 디렉터리를 지정할 수 있습니다.

    --with-gssapi

    GSSAPI 인증을 지원하여 빌드하세요. 많은 시스템에서 GSSAPI(보통 Kerberos 설치의 일부) 시스템은 기본적으로 검색되는 위치에 설치되지 않습니다(예:/usr/포함, /usr/lib), 따라서 옵션을 사용해야 합니다--포함그리고--with-라이브러리이 옵션 외에도.구성계속하기 전에 GSSAPI 토토 베이가 충분한지 확인하기 위해 필요한 헤더 파일과 라이브러리를 확인합니다.

    --with-krb-srvnam=이름

    GSSAPI에서 사용하는 Kerberos 서비스 주체의 기본 이름입니다.포스트그레스기본값입니다. 일반적으로 Windows 환경이 아닌 이상 이를 변경할 이유가 없습니다. Windows 환경의 경우 대문자로 설정해야 합니다.포스트그레스.

    --with-openssl

    다음을 지원하여 빌드SSL(암호화된) 연결. 이를 위해서는 다음이 필요합니다.오픈SSL패키지를 토토 베이해야 합니다.구성필요한 헤더 파일과 라이브러리를 확인하여 귀하가 다음을 수행하는지 확인합니다.오픈SSL계속하기 전에 토토 베이만으로 충분합니다.

    --with-pam

    다음으로 구축PAM(플러그형 인증 모듈) 지원.

    --with-ldap

    다음으로 구축LDAP인증 및 연결 매개변수 조회 지원(참조섹션 31.17그리고섹션 19.3.7자세한 내용은). Unix에서는 다음이 필요합니다.오픈LDAP패키지가 토토 베이됩니다. Windows에서는 기본값WinLDAP라이브러리가 사용되었습니다.구성필요한 헤더 파일과 라이브러리를 확인하여 귀하가 다음을 수행하는지 확인합니다.오픈LDAP계속하기 전에 토토 베이만으로 충분합니다.

    --readline 없음

    다음의 사용을 방지합니다.Readline라이브러리 (및libedit또한). 이 옵션은 명령줄 편집 및 기록을 비활성화합니다.psql이므로 권장하지 않습니다.

    --libedit-선호

    BSD 라이센스 사용을 선호합니다libeditGPL 라이센스가 아닌 라이브러리Readline. 이 옵션은 두 라이브러리가 모두 설치된 경우에만 중요합니다. 이 경우 기본값은 다음을 사용하는 것입니다.Readline.

    --봉쥬르 포함

    Bonjour 지원으로 빌드하세요. 이를 위해서는 운영 체제에서 Bonjour 지원이 필요합니다. OS X에서 권장됩니다.

    --with-uuid=라이브러리

    빌드하세요PostgreSQL : 문서 : 9.5 : 윈 토토-SOSSP지정된 UUID 라이브러리를 사용하는 모듈(UUID 생성 기능 제공).라이브러리다음 중 하나여야 합니다.

    • bsdFreeBSD, NetBSD 및 기타 BSD 파생 시스템에 있는 UUID 함수를 사용합니다.

    • e2fs다음에 의해 생성된 UUID 라이브러리를 사용하려면e2fsprogs프로젝트; 이 라이브러리는 대부분의 Linux 시스템과 OS X에 존재하며 다른 플랫폼에서도 얻을 수 있습니다.

    • ossp사용하려면OSSP UUID 라이브러리

    --with-ossp-uuid

    사용되지 않는 해당 항목--with-uuid=ossp.

    --with-libxml

    libxml로 빌드합니다(SQL/XML 지원 활성화). 이 기능을 사용하려면 Libxml 버전 2.6.23 이상이 필요합니다.

    Libxml이 프로그램을 토토 베이합니다.xml2-config필요한 컴파일러 및 링커 옵션을 감지하는 데 사용할 수 있습니다. PostgreSQL은 이를 발견하면 자동으로 사용합니다. 비정상적인 위치에 libxml 설치를 지정하려면 환경 변수를 설정하면 됩니다.XML2_CONFIG다음을 가리킨다xml2-config설치에 속하는 프로그램 또는 옵션을 사용--포함그리고--with-라이브러리.

    --with-libxslt

    빌드할 때 libxslt를 사용하세요토토 사이트 추천 PostgreSQL : 문서 : 9.5 : XML3모듈.xml2이 라이브러리를 사용하여 XML의 XSL 변환을 수행합니다.

    --비활성화-정수-날짜 시간

    타임스탬프 및 간격에 대한 64비트 정수 저장 지원을 비활성화하고 대신 날짜 시간 값을 부동 소수점 숫자로 저장하십시오. 부동 소수점 날짜/시간 저장소는PostgreSQL8.4 이전에 출시되었지만 전체 범위에 대해 마이크로초 정밀도를 지원하지 않기 때문에 이제 더 이상 사용되지 않습니다.타임스탬프값. 그러나 정수 기반 날짜/시간 저장소에는 64비트 정수 유형이 필요합니다. 따라서 이 옵션은 해당 유형을 사용할 수 없거나 이전 버전용으로 작성된 애플리케이션과의 호환성을 위해 사용할 수 있습니다.PostgreSQL. 보다PostgreSQL : 문서 : 9.5 : 날짜/스포츠 토토 유형더 많은 정보를 원하시면.

    --disable-float4-byval

    float4 값 전달 비활성화"값별", 전달되도록 함"참조로"대신. 이 옵션은 성능이 떨어지지만 C로 작성되고 다음을 사용하는 이전 사용자 정의 함수와의 호환성을 위해 필요할 수 있습니다."버전 0"호출 규칙. 더 나은 장기적인 해결책은 다음을 사용하도록 그러한 함수를 업데이트하는 것입니다."버전 1"호출 규칙.

    --disable-float8-byval

    float8 값 전달 비활성화"값별", 전달되도록 함"참조로"대신. 이 옵션은 성능이 떨어지지만 C로 작성되고 다음을 사용하는 이전 사용자 정의 함수와의 호환성을 위해 필요할 수 있습니다."버전 0"호출 규칙. 더 나은 장기적인 해결책은 다음을 사용하도록 그러한 함수를 업데이트하는 것입니다."버전 1"호출 규칙. 이 옵션은 float8뿐만 아니라 int8 및 타임스탬프와 같은 일부 관련 유형에도 영향을 미칩니다. 32비트 플랫폼에서는,--disable-float8-byval기본값이며 선택이 허용되지 않습니다.--enable-float8-byval.

    --with-segsize=SEGSIZE

    설정세그먼트 크기, 기가바이트 단위. 대형 테이블은 각각 ​​크기가 세그먼트 크기와 동일한 여러 운영 체제 파일로 나뉩니다. 이렇게 하면 많은 플랫폼에 존재하는 파일 크기 제한 문제를 피할 수 있습니다. 기본 세그먼트 크기인 1GB는 지원되는 모든 플랫폼에서 안전합니다. 귀하의 운영 체제에 다음이 있는 경우"대형 파일"지원(요즘에는 대부분 지원)을 사용하면 더 큰 세그먼트 크기를 사용할 수 있습니다. 이는 매우 큰 테이블을 작업할 때 사용되는 파일 설명자 수를 줄이는 데 도움이 될 수 있습니다. 그러나 사용하려는 플랫폼 및 파일 시스템에서 지원하는 것보다 큰 값을 선택하지 않도록 주의하십시오. 다음과 같이 사용하고 싶은 기타 도구타르, 사용 가능한 파일 크기에 대한 제한을 설정할 수도 있습니다. 반드시 필요한 것은 아니지만 이 값을 2의 거듭제곱으로 설정하는 것이 좋습니다. 이 값을 변경하려면 initdb가 필요합니다.

    --with-blocksize=블록 크기

    설정블록 크기(킬로바이트). 테이블 내의 저장 및 I/O 단위입니다. 기본값인 8KB는 대부분의 상황에 적합합니다. 그러나 특별한 경우에는 다른 값이 유용할 수 있습니다. 값은 1에서 32(킬로바이트) 사이의 2의 거듭제곱이어야 합니다. 이 값을 변경하려면 initdb가 필요합니다.

    --with-wal-segsize=SEGSIZE

    설정WAL 세그먼트 크기(MB). 이는 WAL 로그에 있는 각 개별 파일의 크기입니다. WAL 로그 전달의 세분성을 제어하기 위해 이 크기를 조정하는 것이 유용할 수 있습니다. 기본 크기는 16MB입니다. 값은 1에서 64(메가바이트) 사이의 2의 거듭제곱이어야 합니다. 이 값을 변경하려면 initdb가 필요합니다.

    --with-wal-blocksize=블록 크기

    설정WAL 블록 크기, 킬로바이트 단위. WAL 로그 내의 저장 및 I/O 단위입니다. 기본값인 8KB는 대부분의 상황에 적합합니다. 그러나 특별한 경우에는 다른 값이 유용할 수 있습니다. 값은 1에서 64(킬로바이트) 사이의 2의 거듭제곱이어야 합니다. 이 값을 변경하려면 initdb가 필요합니다.

    --비활성화-스핀록

    다음의 경우에도 빌드가 성공하도록 허용PostgreSQL플랫폼에 대한 CPU 스핀록 지원이 없습니다. 스핀록 지원이 부족하면 성능이 저하됩니다. 따라서 이 옵션은 빌드가 중단되고 플랫폼에 스핀록 지원이 부족하다는 것을 알리는 경우에만 사용해야 합니다. 빌드하는 데 이 옵션이 필요한 경우포스트그레SQL귀하의 플랫폼에서 문제를 보고해 주세요.PostgreSQL개발자.

    --비활성화-스레드 안전성

    클라이언트 라이브러리의 스레드 안전성을 비활성화합니다. 이는 동시 스레드를 방지합니다.libpq그리고ECPG프로그램이 비공개 연결 핸들을 안전하게 제어하지 못하게 됩니다.

    --with-system-tzdata=디렉토리

    포스트그레SQL에는 날짜 및 시간 작업에 필요한 자체 시간대 데이터베이스가 포함되어 있습니다. 이 시간대 데이터베이스는 실제로 FreeBSD, Linux, Solaris 등 많은 운영 체제에서 제공하는 IANA 시간대 데이터베이스와 호환되므로 다시 토토 베이하는 것이 중복됩니다. 이 옵션을 사용하면 시스템 제공 시간대 데이터베이스는디렉토리PostgreSQL 소스 배포에 포함된 것 대신 사용됩니다.디렉토리절대 경로로 지정해야 합니다./usr/share/zoneinfo일부 운영 체제에서는 디렉토리일 가능성이 높습니다. 설치 루틴은 일치하지 않거나 잘못된 시간대 데이터를 감지하지 못합니다. 이 옵션을 사용하는 경우 회귀 테스트를 실행하여 지정한 시간대 데이터가 올바르게 작동하는지 확인하는 것이 좋습니다.PostgreSQL.

    이 옵션은 주로 대상 운영 체제를 잘 아는 바이너리 패키지 배포자를 대상으로 합니다. 이 옵션을 사용하는 가장 큰 장점은 많은 현지 일광 절약 시간 규칙이 변경될 때마다 PostgreSQL 패키지를 업그레이드할 필요가 없다는 것입니다. 또 다른 장점은 설치 중에 시간대 데이터베이스 파일을 빌드할 필요가 없는 경우 PostgreSQL을 보다 간단하게 크로스 컴파일할 수 있다는 것입니다.

    --zlib 없이

    다음의 사용을 방지합니다Zlib도서관. 이렇게 하면 압축된 아카이브에 대한 지원이 비활성화됩니다.pg_dump그리고pg_restore. 이 옵션은 이 라이브러리를 사용할 수 없는 드문 시스템에만 사용됩니다.

    --활성화-디버그

    디버깅 기호를 사용하여 모든 프로그램과 라이브러리를 컴파일합니다. 이는 디버거에서 프로그램을 실행하여 문제를 분석할 수 있음을 의미합니다. 이로 인해 설치된 실행 파일의 크기가 상당히 커지고 GCC가 아닌 컴파일러에서는 일반적으로 컴파일러 최적화가 비활성화되어 속도가 느려집니다. 그러나 기호를 사용할 수 있으면 발생할 수 있는 문제를 처리하는 데 매우 도움이 됩니다. 현재 이 옵션은 GCC를 사용하는 경우에만 프로덕션 설치에 권장됩니다. 하지만 개발 작업을 수행하거나 베타 버전을 실행하는 경우 항상 켜져 있어야 합니다.

    --활성화 범위

    GCC를 사용하는 경우 모든 프로그램과 라이브러리는 코드 적용 범위 테스트 도구로 컴파일됩니다. 실행되면 코드 적용 범위 측정 항목이 포함된 빌드 디렉터리에 파일이 생성됩니다. 보다토토 커뮤니티 : 문서 : 9.5 : 테스트 범위 시험34486_34580

    --프로파일링 활성화

    GCC를 사용하는 경우 모든 프로그램과 라이브러리는 프로파일링될 수 있도록 컴파일됩니다. 백엔드 종료 시 다음을 포함하는 하위 디렉터리가 생성됩니다.gmon.out34828_34927

    --enable-cassert

    활성화어설션많은 것을 테스트하는 서버를 체크인"일어날 수 없는 일입니다"조건. 이는 코드 개발 목적으로는 매우 중요하지만 테스트로 인해 서버 속도가 크게 느려질 수 있습니다. 또한 테스트를 활성화한다고 해서 반드시 서버의 안정성이 향상되는 것은 아닙니다! 어설션 검사는 심각도에 따라 분류되지 않으므로 비교적 무해한 버그라도 어설션 실패가 발생하면 서버가 다시 시작됩니다. 이 옵션은 프로덕션 용도로는 권장되지 않지만 개발 작업이나 베타 버전을 실행할 때는 이 옵션을 설정해야 합니다.

    --활성화-의존

    자동 종속성 추적을 활성화합니다. 이 옵션을 사용하면 헤더 파일이 변경될 때 영향을 받는 모든 개체 파일이 다시 작성되도록 makefile이 설정됩니다. 이는 개발 작업을 수행하는 경우 유용하지만 한 번만 컴파일하고 설치하려는 경우 오버헤드를 낭비할 뿐입니다. 현재 이 옵션은 GCC에서만 작동합니다.

    --활성화-dtrace

    컴파일PostgreSQL동적 추적 도구 DTrace를 지원합니다. 보다토토 핫 PostgreSQL : 문서 : 9.5 : 동적 추적더 많은 정보를 원하시면.

    다음을 가리키려면dtrace프로그램, 환경 변수DTRACE설정될 수 있습니다. 이는 종종 필요한 이유입니다.dtrace일반적으로 다음 아래에 설치됩니다./usr/sbin, 경로에 없을 수도 있습니다.

    에 대한 추가 명령줄 옵션dtrace프로그램은 환경 변수에 지정될 수 있습니다.DTRACEFLAGS. Solaris에서 64비트 바이너리에 DTrace 지원을 포함하려면 다음을 지정해야 합니다.DTRACEFLAGS="-64"구성합니다. 예를 들어 GCC 컴파일러를 사용하면 다음과 같습니다.

    ./configure CC='gcc -m64' --enable-dtrace DTRACEFLAGS='-64' ...

    Sun의 컴파일러 사용:

    ./configure CC='/opt/SUNWspro/bin/cc -xtarget=native64' --enable-dtrace DTRACEFLAGS='-64' ...
    --탭 테스트 활성화

    Perl TAP 도구를 사용하여 테스트를 활성화합니다. 이를 위해서는 Perl 설치와 Perl 모듈이 필요합니다.IPC::실행. 보다와이즈 토토 : 문서 : 9.5 : 테스트를 누릅니다더 많은 정보를 원하시면.

    이것과 다른 C 컴파일러를 선호하는 경우구성선택하면 환경 변수를 설정할 수 있습니다.CC당신이 선택한 프로그램에. 기본적으로,구성선택할 것입니다gcc사용 가능한 경우, 그렇지 않으면 플랫폼의 기본값(보통cc). 마찬가지로, 필요한 경우를 사용하여 기본 컴파일러 플래그를 재정의할 수 있습니다.CFLAGS변수.

    다음에서 환경 변수를 지정할 수 있습니다.구성명령줄, 예:

    ./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'

    다음은 이러한 방식으로 설정할 수 있는 중요한 변수 목록입니다:

    바이슨

    들소 프로그램

    CC

    C 컴파일러

    CFLAGS

    C 컴파일러에 전달하는 옵션

    CPP

    C 전처리기

    CPPFLAGS

    C 전처리기에 전달하는 옵션

    DTRACE

    위치dtrace프로그램

    DTRACEFLAGS

    다음으로 전달할 옵션dtrace프로그램

    FLEX

    플렉스 프로그램

    LDFLAGS

    실행 파일이나 공유 라이브러리를 연결할 때 사용할 옵션

    LDFLAGS_EX

    실행 파일만 연결하기 위한 추가 옵션

    LDFLAGS_SL

    공유 라이브러리만 연결하기 위한 추가 옵션

    MSGFMT

    msgfmt모국어 지원 프로그램

    PERL

    Perl 인터프리터의 전체 경로 이름. 이는 PL/Perl 빌드를 위한 종속성을 결정하는 데 사용됩니다.

    파이썬

    Python 인터프리터의 전체 경로 이름. 이는 PL/Python 빌드에 대한 종속성을 결정하는 데 사용됩니다. 또한 Python 2 또는 3이 여기에 지정되었는지(또는 암시적으로 선택되었는지)에 따라 사용 가능한 PL/Python 언어의 변형이 결정됩니다. 보다PostgreSQL : 문서 : 9.5 : 스포츠 토토 사이트 2 vs. 스포츠 토토 사이트 339943_40028파이썬 python3 python2.

    TCLSH

    Tcl 인터프리터의 전체 경로 이름. 이는 PL/Tcl 빌드를 위한 종속성을 결정하는 데 사용되며 Tcl 스크립트로 대체됩니다.

    XML2_CONFIG

    xml2-configlibxml 설치를 찾는 데 사용되는 프로그램.

    가끔 선택한 세트에 나중에 컴파일러 플래그를 추가하는 것이 유용할 때가 있습니다.구성. 중요한 예는 다음과 같습니다.gcc's-오류옵션은 다음에 포함될 수 없습니다.CFLAGS다음으로 전달됨구성, 왜냐하면 많은 부분이 깨질 것이기 때문입니다.구성의 내장 테스트입니다. 이러한 플래그를 추가하려면 해당 플래그를COPT실행 중 환경 변수만들다. 의 내용COPT둘 모두에 추가됩니다CFLAGS그리고LDFLAGS옵션 설정:구성. 예를 들어 다음과 같이 할 수 있습니다.

    COPT='-Werror'로 만듭니다.

    또는

    COPT 내보내기='-Werror'
    만들다

    참고:서버 내부에서 코드를 개발할 때 구성 옵션을 사용하는 것이 좋습니다--enable-cassert(많은 런타임 오류 검사를 활성화함) 및--활성화-디버그(디버깅 도구의 유용성을 향상시킵니다).

    GCC를 사용하는 경우 최소한의 최적화 수준으로 빌드하는 것이 가장 좋습니다.-O1, 최적화를 사용하지 않기 때문입니다(-O0)는 일부 중요한 컴파일러 경고(예: 초기화되지 않은 변수 사용)를 비활성화합니다. 그러나 0이 아닌 최적화 수준은 컴파일된 코드를 단계별로 실행하는 것이 일반적으로 소스 코드 줄과 일대일로 일치하지 않기 때문에 디버깅을 복잡하게 만들 수 있습니다. 최적화된 코드를 디버깅하는 동안 혼란스러운 경우 다음을 사용하여 관심 있는 특정 파일을 다시 컴파일하세요.-O0. 이를 수행하는 쉬운 방법은 옵션을 다음으로 전달하는 것입니다.만들다: make PROFILE=-O0 파일.o.

    COPT그리고프로필환경 변수는 실제로 다음에서 동일하게 처리됩니다.포스트그레SQLmakefiles. 어느 것을 사용할지는 선호도의 문제이지만 개발자들 사이의 일반적인 습관은 다음과 같습니다.프로필일회성 플래그 조정용, 반면COPT항상 설정된 상태로 유지될 수 있습니다.

  2. 빌드

    빌드를 시작하려면 다음을 입력하세요:

    만들다

    (사용을 기억하세요GNU 만들다.) 하드웨어에 따라 빌드에 몇 분이 소요됩니다. 표시되는 마지막 줄은 다음과 같아야 합니다.

    PostgreSQL이 모두 성공적으로 만들어졌습니다. 설치 준비가 완료되었습니다.

    문서(HTML 및 매뉴얼 페이지) 및 추가 모듈을 포함하여 구축할 수 있는 모든 것을 구축하려는 경우(기여), 대신 다음을 입력하세요.

    세상을 만드세요

    표시되는 마지막 줄은 다음과 같아야 합니다:

    PostgreSQL, contrib 및 문서가 성공적으로 작성되었습니다. 설치 준비가 완료되었습니다.
  3. 회귀 테스트

    새로 구축된 서버를 토토 베이하기 전에 테스트하고 싶다면 이 시점에서 회귀 테스트를 실행할 수 있습니다. 회귀 테스트는 다음을 확인하는 테스트 모음입니다.PostgreSQL개발자가 기대한 방식으로 컴퓨터에서 실행됩니다. 유형:

    확인하세요

    (루트로는 작동하지 않습니다. 권한이 없는 사용자로 수행하십시오.)제30장테스트 결과 해석에 대한 자세한 정보가 포함되어 있습니다. 나중에 동일한 명령을 실행하여 이 테스트를 반복할 수 있습니다.

  4. 파일 토토 베이

    참고:기존 시스템을 업그레이드하는 경우 반드시 읽으십시오.스포츠 토토 결과 : 문서 : 9.5 : 스포츠 토토 결과 클러스터 업그레이드클러스터 업그레이드에 대한 지침이 있습니다.

    토토 베이하려면PostgreSQL입력:

    토토 베이하기

    이것은 지정된 디렉토리에 파일을 설치합니다1단계. 해당 영역에 쓸 수 있는 적절한 권한이 있는지 확인하십시오. 일반적으로 이 단계는 루트로 수행해야 합니다. 또는 미리 대상 디렉터리를 만들고 적절한 권한이 부여되도록 준비할 수 있습니다.

    문서(HTML 및 매뉴얼 페이지)를 토토 베이하려면 다음을 입력하십시오:

    설치 문서 작성

    위의 세계를 건설했다면 대신 다음을 입력하세요:

    make install-world

    이것은 문서도 설치합니다.

    당신은 사용할 수 있습니다토토 베이 스트립 만들기대신에토토 베이하기설치된 실행 파일과 라이브러리를 제거합니다. 이렇게 하면 공간이 절약됩니다. 디버깅 지원을 사용하여 빌드한 경우 스트리핑은 디버깅 지원을 효과적으로 제거하므로 디버깅이 더 이상 필요하지 않은 경우에만 수행해야 합니다.토토 베이-스트립공간을 절약하는 합리적인 작업을 시도하지만 실행 파일에서 불필요한 바이트를 모두 제거하는 방법에 대한 완벽한 지식이 없으므로 가능한 모든 디스크 공간을 절약하려면 수동 작업을 수행해야 합니다.

    표준 설치는 C로 작성된 사용자 정의 함수 또는 데이터 유형과 같은 서버 측 프로그램 개발뿐만 아니라 클라이언트 응용 프로그램 개발에 필요한 모든 헤더 파일을 제공합니다. (이전)PostgreSQL8.0, 별도모든 헤더 토토 베이 만들기후자를 위해서는 명령이 필요했지만 이 단계는 표준 토토 베이에 포함되었습니다.)

    클라이언트 전용 토토 베이:클라이언트 응용 프로그램과 인터페이스 라이브러리만 토토 베이하려면 다음 명령을 사용할 수 있습니다.

    make -C src/bin 설치
    make -C src/include 토토 베이
    make -C src/인터페이스 토토 베이
    make -C 문서 설치

    src/bin서버 전용 바이너리가 몇 개 있지만 크기가 작습니다.

제거:설치를 취소하려면 다음 명령을 사용하십시오.제거를 수행. 그러나 생성된 디렉터리는 제거되지 않습니다.

청소 중:설치 후 다음 명령을 사용하여 소스 트리에서 빌드된 파일을 제거하여 디스크 공간을 확보할 수 있습니다.깨끗하게 만드세요. 이렇게 하면 다음에서 만든 파일이 보존됩니다.구성프로그램을 사용하여 모든 것을 다시 빌드할 수 있습니다.만들다나중에. 소스 트리를 배포된 상태로 재설정하려면 다음을 사용하세요.make distclean. 동일한 소스 트리 내에서 여러 플랫폼용으로 빌드하려면 이 작업을 수행하고 각 플랫폼에 대해 재구성해야 합니다. (또는 각 플랫폼마다 별도의 빌드 트리를 사용하여 소스 트리가 수정되지 않은 상태로 유지됩니다.)

빌드를 수행한 후 다음을 발견하면구성옵션이 잘못되었거나 변경한 사항이 있는 경우구성조사(예: 소프트웨어 업그레이드)한 다음 수행하는 것이 좋습니다.make distclean재구성 및 재구축 전. 이것이 없으면 구성 선택의 변경사항이 필요한 모든 곳에 전파되지 않을 수 있습니다.