./구성 만들다 수 설치하다 adduser 포스트그레스 mkdir -p /usr/local/pgsql/data chown postgres /usr/local/pgsql/data su-포스트그레스 /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data /usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l 로그 파일 시작 /usr/local/pgsql/bin/createdb 테스트 /usr/local/pgsql/bin/psql 테스트
긴 버전은 이것의 나머지 부분입니다.섹션.
구성
설치 절차의 첫 번째 단계는 시스템의 소스 트리를 구성하고 원하는 옵션을 선택하는 것입니다. 이는 다음을 실행하여 수행됩니다.구성스크립트. 기본 설치의 경우 다음을 입력하면 됩니다.
./구성
이 스크립트는 다양한 시스템 종속 변수의 값을 결정하고 운영 체제의 모든 문제를 감지하기 위해 여러 테스트를 실행하며 마지막으로 발견된 내용을 기록하기 위해 빌드 트리에 여러 파일을 생성합니다.
당신은 또한 달릴 수 있습니다구성소스 트리 외부 디렉토리에 있는 다음 거기에서 빌드하십시오. 빌드 디렉토리를 원본 소스 파일과 별도로 유지하려는 경우. 이 절차를 aVPATH빌드. 방법은 다음과 같습니다.
mkdir build_dircd build_dir/path/to/source/tree/configure [옵션은 여기로 이동]만들다
기본 구성은 서버와 유틸리티는 물론 C 컴파일러만 필요한 모든 클라이언트 응용 프로그램과 인터페이스를 구축합니다. 모든 파일은 아래에 설치됩니다./usr/local/pgsql기본적으로.
하나 이상의 명령줄 옵션을 제공하여 빌드 및 설치 프로세스를 사용자 정의할 수 있습니다.구성. 일반적으로 설치 위치 또는 빌드된 선택적 기능 세트를 사용자 정의합니다.구성다음에 설명된 다양한 옵션이 있습니다.섹션 17.3.3.
또한,구성에 설명된 대로 특정 환경 변수에 응답합니다.섹션 17.3.4. 이는 구성을 맞춤설정하는 추가 방법을 제공합니다.
빌드
빌드를 시작하려면 다음 중 하나를 입력하세요.
만들다모두 만들기
(사용을 기억하세요GNU 만들다.) 하드웨어에 따라 빌드에 몇 분이 소요됩니다.
문서(HTML 및 매뉴얼 페이지) 및 추가 모듈(을 포함하여 구축할 수 있는 모든 것을 구축하려는 경우기여), 대신 다음을 입력하세요.
세상을 만드세요
추가 모듈을 포함하여 빌드할 수 있는 모든 것을 빌드하려는 경우 (기여), 문서가 없으면 대신 다음을 입력하세요.
월드 빈 만들기
수동이 아닌 다른 makefile에서 빌드를 호출하려면 설정을 해제해야 합니다.메이크레벨또는 다음과 같이 0으로 설정하세요.
빌드-postgresql:
$(MAKE) -C postgresql MAKELEVEL=0 모두
그렇게 하지 않으면 일반적으로 누락된 헤더 파일에 관한 이상한 오류 메시지가 나타날 수 있습니다.
회귀 테스트
새로 구축된 서버를 설치하기 전에 테스트하고 싶다면 이 시점에서 회귀 테스트를 실행할 수 있습니다. 회귀 테스트는 다음을 확인하는 테스트 모음입니다.PostgreSQL개발자가 예상한 방식으로 컴퓨터에서 실행됩니다. 유형:
확인하세요
(이것은 루트로 작동하지 않습니다. 권한이 없는 사용자로 수행하십시오.) 참조PostgreSQL : 문서 : 18 : 31 장. 회귀 윈 토토12979_13115
파일 설치
기존 시스템을 업그레이드하는 경우 반드시 읽으십시오.PostgreSQL : 문서 : 18 : 18.6. PostgreSQL 클러스터 토토 사이트, 클러스터 업그레이드에 대한 지침이 포함되어 있습니다.
설치하려면PostgreSQL입력:
설치하기
이것은 지정된 디렉토리에 파일을 설치합니다1단계. 해당 영역에 쓸 수 있는 적절한 권한이 있는지 확인하십시오. 일반적으로 이 단계는 루트로 수행해야 합니다. 또는 미리 대상 디렉터리를 만들고 적절한 권한이 부여되도록 준비할 수 있습니다.
문서(HTML 및 매뉴얼 페이지)를 설치하려면 다음을 입력하십시오:
make install-docs
위의 세계를 건설했다면 대신 다음을 입력하세요:
make install-world
이것은 문서도 설치합니다.
위 문서 없이 세상을 만들었다면 대신 다음을 입력하세요:
make install-world-bin
당신은 사용할 수 있습니다설치 스트립 만들기대신설치하기설치된 실행 파일과 라이브러리를 제거합니다. 이렇게 하면 공간이 절약됩니다. 디버깅 지원을 사용하여 빌드한 경우 스트리핑은 디버깅 지원을 효과적으로 제거하므로 디버깅이 더 이상 필요하지 않은 경우에만 수행해야 합니다.설치-스트립공간을 절약하는 합리적인 작업을 시도하지만 실행 파일에서 불필요한 바이트를 모두 제거하는 방법에 대한 완벽한 지식이 없으므로 가능한 모든 디스크 공간을 절약하려면 수동 작업을 수행해야 합니다.
표준 설치는 C로 작성된 사용자 정의 함수 또는 데이터 유형과 같은 서버 측 프로그램 개발뿐만 아니라 클라이언트 응용 프로그램 개발에 필요한 모든 헤더 파일을 제공합니다.
클라이언트 전용 설치: 클라이언트 응용 프로그램과 인터페이스 라이브러리만 설치하려면 다음 명령을 사용할 수 있습니다.
make -C src/bin 설치make -C src/include 설치make -C src/interfaces 설치make -C 문서 설치
src/bin서버 전용 바이너리가 몇 개 있지만 크기가 작습니다.
제거: 설치를 취소하려면 다음 명령을 사용하세요.제거를 수행. 그러나 생성된 디렉터리는 제거되지 않습니다.
청소 중: 설치 후 다음 명령을 사용하여 소스 트리에서 빌드된 파일을 제거하여 디스크 공간을 확보할 수 있습니다.깨끗하게 만드세요. 이렇게 하면 다음에서 만든 파일이 보존됩니다.구성프로그램을 사용하여 모든 것을 다시 빌드할 수 있습니다.만들다나중에. 소스 트리를 배포된 상태로 재설정하려면 다음을 사용하세요.make distclean. 동일한 소스 트리 내에서 여러 플랫폼용으로 빌드하려면 이 작업을 수행하고 각 플랫폼에 대해 재구성해야 합니다. (또는 각 플랫폼마다 별도의 빌드 트리를 사용하여 소스 트리가 수정되지 않은 상태로 유지됩니다.)
빌드를 수행한 후 다음을 발견한 경우구성옵션이 잘못되었거나 변경한 사항이 있는 경우구성조사(예: 소프트웨어 업그레이드)한 다음 수행하는 것이 좋습니다.make distclean재구성 및 재구축 전. 이것이 없으면 구성 선택의 변경사항이 필요한 모든 곳에 전파되지 않을 수 있습니다.
구성옵션#구성의 명령줄 옵션은 아래에 설명되어 있습니다. 이 목록은 완전하지 않습니다(사용./configure --help그것을 얻으려면). 여기서 다루지 않은 옵션은 크로스 컴파일과 같은 고급 사용 사례를 위한 것이며 표준 Autoconf 문서에 문서화되어 있습니다.
이 옵션은 위치를 제어합니다.설치하기파일을 넣을 것입니다. 그만큼--접두사18770_19128남자그리고문서위치는 이 제한의 영향을 받지 않습니다.) 재배치 가능한 설치의 경우 다음을 사용할 수 있습니다.--disable-rpath옵션은 나중에 설명됩니다.
--접두사=프리픽스 #디렉토리 아래의 모든 파일 설치프리픽스대신에/usr/local/pgsql. 실제 파일은 다양한 하위 디렉터리에 설치됩니다. 어떤 파일도 직접 설치되지 않습니다.프리픽스디렉토리.
--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=디렉토리 #함께 제공되는 매뉴얼 페이지포스트그레SQL이 디렉토리 아래에 각각 설치됩니다남자하위 디렉토리. 기본값은x.DATAROOTDIR/남자
--docdir=디렉토리 #다음을 제외하고 문서 파일 설치를 위한 루트 디렉토리를 설정합니다.“남자”페이지. 이는 다음 옵션에 대한 기본값만 설정합니다. 이 옵션의 기본값은.DATAROOTDIR/doc/postgresql
--htmldir=디렉토리 #다음에 대한 HTML 형식 문서PostgreSQL이 디렉토리 아래에 설치됩니다. 기본값은.DATAROOTDIR
설치가 가능하도록 주의가 기울여졌습니다PostgreSQL공유 설치 위치(예:/usr/local/include) 시스템의 나머지 부분의 네임스페이스를 방해하지 않고. 먼저, 문자열“/postgresql”다음에 자동으로 추가됩니다.datadir, sysconfdir및docdir, 완전히 확장된 디렉토리 이름에 이미 문자열이 포함되어 있지 않은 경우“포스트그레”또는“pgsql”. 예를 들어 다음을 선택하는 경우/usr/로컬접두사로서 문서는 다음 위치에 설치됩니다./usr/local/doc/postgresql, 그러나 접두사가 다음과 같은 경우/opt/postgres, 그러면 들어가겠죠/opt/postgres/doc. 클라이언트 인터페이스의 공개 C 헤더 파일은 다음 위치에 설치됩니다.포함dir그리고 네임스페이스가 깨끗합니다. 내부 헤더 파일과 서버 헤더 파일은 다음의 개인 디렉터리에 설치됩니다.포함dir. 헤더 파일에 액세스하는 방법에 대한 자세한 내용은 각 인터페이스의 설명서를 참조하세요. 마지막으로 해당하는 경우 다음 아래에 비공개 하위 디렉터리도 생성됩니다.libdir동적으로 로드 가능한 모듈의 경우.
이 섹션에 설명된 옵션은 다양한 구축을 가능하게 합니다.PostgreSQL기본적으로 구축되지 않은 기능입니다. 이들 중 대부분은 다음에 설명된 대로 추가 소프트웨어가 필요하기 때문에 기본값이 아닙니다.토토 캔 : 문서 : 18 : 17.1. 요구 토토 캔.
--enable-nls[=언어] #모국어 지원 활성화 (NLS), 즉 영어 이외의 언어로 프로그램의 메시지를 표시하는 기능입니다.언어은 지원하려는 언어의 선택적 공백으로 구분된 코드 목록입니다. 예를 들어--enable-nls='de fr'. (목록과 실제로 제공된 번역 집합 간의 교차점은 자동으로 계산됩니다.) 목록을 지정하지 않으면 사용 가능한 모든 번역이 설치됩니다.
이 옵션을 스포츠 토토 베트맨려면 다음 구현이 필요합니다.GettextAPI.
--with-perl #빌드PL/펄서버측 언어.
--with-python #빌드하세요PL/파이썬서버측 언어.
--with-tcl #빌드PL/Tcl서버측 언어.
--with-tclconfig=디렉토리 #Tcl이 파일을 설치합니다.tclConfig.sh, Tcl과 인터페이스하는 모듈을 빌드하는 데 필요한 구성 정보가 포함되어 있습니다. 이 파일은 일반적으로 잘 알려진 위치에서 자동으로 발견되지만, 다른 버전의 Tcl을 사용하려는 경우 찾을 디렉터리를 지정할 수 있습니다.tclConfig.sh.
--with-llvm #다음을 지원하여 빌드LLVM기반JIT컴파일(참조장 30). 이를 위해서는 다음이 필요합니다.LLVM라이브러리를 설치할 예정입니다. 최소 필수 버전은LLVM현재 14세입니다.
llvm-config필요한 컴파일 옵션을 찾는 데 사용됩니다.llvm-config다음에서 검색됩니다경로. 원하는 프로그램이 나오지 않으면 다음을 사용하세요.LLVM_CONFIG올바른 경로를 지정하려면llvm-config. 예를 들어
./configure ... --with-llvm LLVM_CONFIG='/path/to/llvm/bin/llvm-config'
LLVM지원하려면 호환이 필요합니다.삐걱거리는 소리컴파일러(필요한 경우 다음을 사용하여 지정됨CLANG환경 변수) 및 작동하는 C++ 컴파일러(필요한 경우CXX환경 변수).
--with-lz4 #다음으로 구축LZ4압축 지원.
--with-zstd #다음으로 구축Z표준압축 지원.
--with-ssl=라이브러리 #다음을 지원하여 빌드SSL(암호화된) 연결. 유일한라이브러리지원되는 대상은openssl, 둘 다에 사용됨오픈SSL그리고리브레SSL. 이를 위해서는 다음이 필요합니다.오픈SSL패키지를 설치해야 합니다.구성필요한 헤더 파일과 라이브러리를 확인하여 귀하가 다음을 수행하는지 확인합니다.오픈SSL계속하기 전에 설치만으로 충분합니다.
--with-openssl #사용되지 않는 해당 항목--with-ssl=openssl.
--with-gssapi #GSSAPI 인증을 지원하여 빌드하세요. GSSAPI를 스포츠 토토 베트맨려면 MIT Kerberos를 설치해야 합니다. 많은 시스템에서 GSSAPI 시스템(MIT Kerberos 설치의 일부)은 기본적으로 검색되는 위치에 설치되지 않습니다(예:/usr/include, /usr/lib), 따라서 옵션을 사용해야 합니다--with-includes그리고--with-라이브러리이 옵션 외에도.구성계속하기 전에 GSSAPI 설치가 충분한지 확인하기 위해 필요한 헤더 파일과 라이브러리를 확인합니다.
--with-ldap #다음으로 구축LDAP인증 및 연결 매개변수 조회 지원(참조PostgreSQL : 문서 : 18 : 32.18. 와이즈 토토 연결 매개 변수 조회그리고PostgreSQL : 문서 : 18 : 20.10. 토토 캔 인증자세한 정보는). Unix에서는 다음이 필요합니다.오픈LDAP패키지를 설치해야 합니다. Windows에서는 기본값WinLDAP라이브러리가 사용되었습니다.구성필요한 헤더 파일과 라이브러리를 확인하여 귀하가 다음을 수행하는지 확인합니다.오픈LDAP계속하기 전에 설치만으로 충분합니다.
--with-pam #--with-bsd-auth #BSD 인증 지원으로 빌드하세요. (BSD 인증 프레임워크는 현재 OpenBSD에서만 사용할 수 있습니다.)
--with-systemd #다음을 지원하여 빌드시스템화서비스 알림. 이는 서버가 다음에서 시작되는 경우 통합을 향상시킵니다.시스템화그러나 그 외에는 아무런 영향을 미치지 않습니다. 보다PostgreSQL : 문서 : 18 : 18.3. 데이터베이스 토토 커뮤니티 시작더 많은 정보를 원하시면.libsystemd이 옵션을 스포츠 토토 베트맨려면 관련 헤더 파일을 설치해야 합니다.
--봉쥬르 포함 #Bonjour 자동 서비스 검색을 지원하여 구축하세요. 이를 위해서는 운영 체제에서 Bonjour 지원이 필요합니다. macOS에서 권장됩니다.
--with-uuid=라이브러리 #빌드하세요PostgreSQL : 문서 : 18 : F.49. 사설 토토 사이트-sossp-사설 토토 사이트 발전기지정된 UUID 라이브러리를 사용하는 모듈(UUID 생성 기능 제공). 라이브러리다음 중 하나여야 합니다.
bsdFreeBSD 및 기타 BSD 파생 시스템에 있는 UUID 함수를 스포츠 토토 베트맨기 위해
e2fs다음에 의해 생성된 UUID 라이브러리를 스포츠 토토 베트맨려면e2fsprogs프로젝트; 이 라이브러리는 대부분의 Linux 시스템과 macOS에 존재하며 다른 플랫폼에서도 얻을 수 있습니다.
ossp스포츠 토토 베트맨려면OSSP UUID 라이브러리
--with-ossp-uuid #사용되지 않는 해당 항목--with-uuid=ossp.
--with-libcurl #OAuth 2.0 클라이언트 흐름을 위한 libcurl 지원으로 빌드하세요. 이 기능을 스포츠 토토 베트맨려면 Libcurl 버전 7.61.0 이상이 필요합니다. 이를 사용하여 빌드하면 필요한 헤더 파일과 라이브러리가 있는지 확인하여 다음을 확인합니다.컬계속하기 전에 설치만으로 충분합니다.
--with-libnuma #기본 NUMA 지원을 위해 libnuma 지원으로 빌드하세요. 다음과 같은 플랫폼에서만 지원됩니다.libnuma라이브러리가 구현되었습니다.
--with-liburing #liburing으로 빌드하여 비동기 I/O에 대한 io_uring 지원을 활성화합니다.
필수 컴파일러 및 링커 옵션을 감지하기 위해 PostgreSQL은 쿼리합니다pkg-config.
특이한 위치에 있는 liburing 설치를 스포츠 토토 베트맨려면 다음을 설정할 수 있습니다.pkg-config관련 환경 변수(해당 문서 참조).
--with-libxml #libxml2로 빌드하여 SQL/XML 지원을 활성화합니다. 이 기능을 스포츠 토토 베트맨려면 Libxml2 버전 2.6.23 이상이 필요합니다.
필수 컴파일러 및 링커 옵션을 감지하기 위해 PostgreSQL은 쿼리합니다pkg-config, 설치되어 있고 libxml2에 대해 알고 있는 경우. 그렇지 않으면 프로그램xml2-config42191_42262pkg-config다중 아키텍처 설치를 더 잘 처리할 수 있기 때문에 선호됩니다.
비정상적인 위치에 있는 libxml2 설치를 스포츠 토토 베트맨려면 다음을 설정할 수 있습니다.pkg-config관련 환경 변수(해당 문서 참조) 또는 환경 변수 설정XML2_CONFIG다음을 가리킨다xml2-configlibxml2 설치에 속하는 프로그램 또는 변수 설정XML2_CFLAGS그리고XML2_LIBS. (만약에pkg-config이 설치되면 libxml2가 어디에 있는지에 대한 아이디어를 무시하려면 다음 중 하나를 설정해야 합니다.XML2_CONFIG또는 둘 다 설정XML2_CFLAGS그리고XML2_LIBS비어 있지 않은 문자열로.)
--with-libxslt #libxslt로 빌드하여 활성화PostgreSQL : 문서 : 18 : F.50. XML2 - XPATH 토토 베이 및 XSLT 기능XML의 XSL 변환을 수행하는 모듈.--with-libxml또한 지정해야 합니다.
--with-selinux #SElinux 지원으로 빌드하여 다음을 활성화합니다.PostgreSQL : 문서 : 18 : F.40. Sepgsql-Selinux-, 레이블 기반 필수 액세스 제어 (MAC) 토토 모듈확장.
이 섹션에 설명된 옵션을 사용하면 특정 기능을 비활성화할 수 있습니다.포스트그레SQL기본적으로 구축되지만 필요한 소프트웨어나 시스템 기능을 사용할 수 없는 경우 꺼야 할 수 있는 기능입니다. 꼭 필요한 경우가 아니면 이러한 옵션을 사용하지 않는 것이 좋습니다.
--icu 없이 #다음에 대한 지원 없이 빌드중환자실라이브러리, ICU 대조 기능 사용 비활성화(참조PostgreSQL : 문서 : 18 : 23.2. 토토 결과 Support).
--readline 없음 #다음의 사용을 방지합니다.Readline라이브러리 (및libedit또한). 이 옵션은 명령줄 편집 및 기록을 비활성화합니다.psql.
--libedit-선호 #BSD 라이센스 사용을 선호합니다libeditGPL 라이센스가 아닌 라이브러리Readline. 이 옵션은 두 라이브러리가 모두 설치된 경우에만 중요합니다. 이 경우 기본값은 다음을 사용하는 것입니다.Readline.
--zlib 없이 #다음의 사용을 방지합니다Zlib도서관. 이렇게 하면 압축된 아카이브에 대한 지원이 비활성화됩니다.pg_dump그리고pg_restore.
--with-includes=디렉터리 #디렉터리은 컴파일러가 헤더 파일을 검색하는 목록에 추가될 콜론으로 구분된 디렉터리 목록입니다. 선택적 패키지가 있는 경우(예: GNUReadline)가 비표준 위치에 설치된 경우 이 옵션과 해당 옵션도 사용해야 합니다.--with-라이브러리옵션.
예:--with-includes=/opt/gnu/include:/usr/sup/include.
--with-libraries=디렉토리 #디렉터리는 라이브러리를 검색하기 위한 콜론으로 구분된 디렉토리 목록입니다. 아마도 이 옵션(및 해당하는을 사용해야 할 것입니다.--포함옵션) 비표준 위치에 패키지가 설치된 경우.
예:--with-libraries=/opt/gnu/lib:/usr/sup/lib.
--with-system-tzdata=디렉토리 #PostgreSQL에는 날짜 및 시간 작업에 필요한 자체 시간대 데이터베이스가 포함되어 있습니다. 이 시간대 데이터베이스는 실제로 FreeBSD, Linux, Solaris 등 많은 운영 체제에서 제공하는 IANA 시간대 데이터베이스와 호환되므로 다시 설치하는 것이 중복됩니다. 이 옵션을 사용하면 시스템 제공 시간대 데이터베이스는디렉토리PostgreSQL 소스 배포에 포함된 것 대신 사용됩니다.디렉토리절대 경로로 지정해야 합니다./usr/share/zoneinfo일부 운영 체제에서는 디렉토리일 가능성이 높습니다. 설치 루틴은 일치하지 않거나 잘못된 시간대 데이터를 감지하지 못합니다. 이 옵션을 사용하는 경우 회귀 테스트를 실행하여 지정한 시간대 데이터가 올바르게 작동하는지 확인하는 것이 좋습니다.PostgreSQL.
이 옵션은 주로 대상 운영 체제를 잘 아는 바이너리 패키지 배포자를 대상으로 합니다. 이 옵션을 사용하는 가장 큰 장점은 많은 현지 일광 절약 시간 규칙이 변경될 때마다 PostgreSQL 패키지를 업그레이드할 필요가 없다는 것입니다. 또 다른 장점은 설치 중에 시간대 데이터베이스 파일을 빌드할 필요가 없는 경우 PostgreSQL을 보다 간단하게 크로스 컴파일할 수 있다는 것입니다.
--추가 버전=STRING #추가STRINGPostgreSQL 버전 번호로 변경됩니다. 예를 들어, 출시되지 않은 Git 스냅샷에서 빌드된 바이너리나 a와 같은 추가 버전 문자열을 사용하여 사용자 정의 패치를 포함하는 바이너리를 표시하는 데 사용할 수 있습니다.git 설명식별자 또는 배포 패키지 릴리스 번호.
--disable-rpath #표시하지 않음PostgreSQL의 실행 파일은 설치 라이브러리 디렉토리에서 공유 라이브러리를 검색해야 함을 나타냅니다(참조--libdir). 대부분의 플랫폼에서 이 표시는 라이브러리 디렉터리에 대한 절대 경로를 사용하므로 나중에 설치 위치를 변경할 경우 도움이 되지 않습니다. 그러나 실행 파일이 공유 라이브러리를 찾을 수 있도록 다른 방법을 제공해야 합니다. 일반적으로 이를 위해서는 라이브러리 디렉터리를 검색하도록 운영 체제의 동적 링커를 구성해야 합니다. 보다섹션 17.5.1자세한 내용은.
특히 테스트 빌드의 경우 기본 포트 번호를 조정하는 것이 매우 일반적입니다.--with-pgport. 이 섹션의 다른 옵션은 고급 사용자에게만 권장됩니다.
--with-pgport=NUMBER #설정NUMBER서버 및 클라이언트의 기본 포트 번호로 사용됩니다. 기본값은 5432입니다. 포트는 나중에 언제든지 변경할 수 있지만 여기서 지정하면 서버와 클라이언트 모두 동일한 기본값이 컴파일되어 매우 편리할 수 있습니다. 일반적으로 기본값이 아닌 값을 선택하는 유일한 이유는 여러 개를 실행하려는 경우입니다.포스트그레SQL서버가 동일한 시스템에 있습니다.
--with-krb-srvnam=이름 #GSSAPI에서 사용하는 Kerberos 서비스 주체의 기본 이름.포스트그레기본값입니다. 일반적으로 Windows 환경용으로 빌드하지 않는 한 이를 변경할 이유가 없습니다. 이 경우 대문자로 설정해야 합니다.포스트그레스.
--with-segsize=SEGSIZE #설정세그먼트 크기, 기가바이트 단위. 대형 테이블은 각각 크기가 세그먼트 크기와 동일한 여러 운영 체제 파일로 나뉩니다. 이렇게 하면 많은 플랫폼에 존재하는 파일 크기 제한 문제를 피할 수 있습니다. 기본 세그먼트 크기인 1GB는 지원되는 모든 플랫폼에서 안전합니다. 귀하의 운영 체제에 다음이 있는 경우“대형 파일”지원(요즘 대부분 지원)을 사용하면 더 큰 세그먼트 크기를 사용할 수 있습니다. 이는 매우 큰 테이블을 작업할 때 사용되는 파일 설명자 수를 줄이는 데 도움이 될 수 있습니다. 그러나 사용하려는 플랫폼 및 파일 시스템에서 지원하는 것보다 큰 값을 선택하지 않도록 주의하십시오. 다음과 같이 사용하고 싶은 기타 도구타르, 사용 가능한 파일 크기에 대한 제한을 설정할 수도 있습니다. 반드시 필요한 것은 아니지만 이 값을 2의 거듭제곱으로 설정하는 것이 좋습니다. 이 값을 변경하면 온디스크 데이터베이스 호환성이 손상되므로 사용할 수 없습니다.pg_upgrade다른 세그먼트 크기를 가진 빌드로 업그레이드합니다.
--with-blocksize=블록 크기 #설정블록 크기(킬로바이트). 테이블 내의 저장 및 I/O 단위입니다. 기본값인 8KB는 대부분의 상황에 적합합니다. 그러나 특별한 경우에는 다른 값이 유용할 수 있습니다. 값은 1에서 32(킬로바이트) 사이의 2의 거듭제곱이어야 합니다. 이 값을 변경하면 온디스크 데이터베이스 호환성이 손상되므로 사용할 수 없습니다.pg_upgrade다른 블록 크기를 가진 빌드로 업그레이드합니다.
--with-wal-blocksize=블록 크기 #설정WAL 블록 크기(킬로바이트). WAL 로그 내의 저장 및 I/O 단위입니다. 기본값인 8KB는 대부분의 상황에 적합합니다. 그러나 특별한 경우에는 다른 값이 유용할 수 있습니다. 값은 1에서 64(킬로바이트) 사이의 2의 거듭제곱이어야 합니다. 이 값을 변경하면 온디스크 데이터베이스 호환성이 손상되므로 사용할 수 없습니다.pg_upgrade다른 WAL 블록 크기를 가진 빌드로 업그레이드합니다.
이 섹션에 있는 대부분의 옵션은 개발 또는 디버깅에만 관심이 있습니다.포스트그레SQL. 다음을 제외하고 프로덕션 빌드에는 권장되지 않습니다.--활성화-디버그, 이는 버그가 발생한 불행한 상황에서 자세한 버그 보고서를 활성화하는 데 유용할 수 있습니다. DTrace를 지원하는 플랫폼에서,--활성화-dtrace프로덕션에 스포츠 토토 베트맨는 것이 합리적일 수도 있습니다.
서버 내부에서 코드를 개발하는 데 사용할 설치를 구축할 때 최소한 옵션을 사용하는 것이 좋습니다.--활성화-디버그그리고--활성화-카서트.
--활성화-디버그 #디버깅 기호를 사용하여 모든 프로그램과 라이브러리를 컴파일합니다. 이는 디버거에서 프로그램을 실행하여 문제를 분석할 수 있음을 의미합니다. 이로 인해 설치된 실행 파일의 크기가 상당히 커지고 GCC가 아닌 컴파일러에서는 일반적으로 컴파일러 최적화가 비활성화되어 속도가 느려집니다. 그러나 기호를 사용할 수 있으면 발생할 수 있는 문제를 처리하는 데 매우 도움이 됩니다. 현재 이 옵션은 GCC를 사용하는 경우에만 프로덕션 설치에 권장됩니다. 하지만 개발 작업을 수행하거나 베타 버전을 실행하는 경우 항상 켜져 있어야 합니다.
--enable-cassert #활성화어설션많은 것을 테스트하는 서버를 체크인“일어날 수 없는 일입니다”조건. 이는 코드 개발 목적으로는 매우 중요하지만 테스트로 인해 서버 속도가 크게 느려질 수 있습니다. 또한 테스트를 활성화한다고 해서 반드시 서버의 안정성이 향상되는 것은 아닙니다! 어설션 검사는 심각도에 따라 분류되지 않으므로 비교적 무해한 버그라도 어설션 실패가 발생하면 서버가 다시 시작됩니다. 이 옵션은 프로덕션 용도로는 권장되지 않지만 개발 작업이나 베타 버전을 실행할 때는 이 옵션을 설정해야 합니다.
--탭 테스트 활성화 #Perl TAP 도구를 사용하여 테스트를 활성화합니다. 이를 위해서는 Perl 설치와 Perl 모듈이 필요합니다.IPC::실행. 보다PostgreSQL : 문서 : 18 : 31.4. 탭 사설 토토 사이트더 많은 정보를 원하시면.
--활성화-의존 #자동 종속성 추적을 활성화합니다. 이 옵션을 사용하면 헤더 파일이 변경될 때 영향을 받는 모든 개체 파일이 다시 작성되도록 makefile이 설정됩니다. 이는 개발 작업을 수행하는 경우 유용하지만 한 번만 컴파일하고 설치하려는 경우 오버헤드를 낭비할 뿐입니다. 현재 이 옵션은 GCC에서만 작동합니다.
--활성화 범위 #GCC를 사용하는 경우 모든 프로그램과 라이브러리는 코드 적용 범위 테스트 도구로 컴파일됩니다. 실행되면 코드 적용 범위 측정 항목이 포함된 빌드 디렉터리에 파일이 생성됩니다. 보다PostgreSQL : 문서 : 18 : 31.5. 테스트 토토 시험61574_61668
--프로파일링 활성화 #GCC를 사용하는 경우 모든 프로그램과 라이브러리는 프로파일링될 수 있도록 컴파일됩니다. 백엔드 종료 시 다음을 포함하는 하위 디렉터리가 생성됩니다.gmon.out프로필 데이터가 포함된 파일입니다. 이 옵션은 GCC와 개발 작업을 수행할 때만 사용됩니다.
--활성화-dtrace #컴파일포스트그레SQL동적 추적 도구 DTrace를 지원합니다. 보다토토 베이 PostgreSQL : 문서 : 18 : 27.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' ...
--인젝션 포인트 활성화 #컴파일포스트그레SQL서버의 주입 지점을 지원합니다. 주입 지점을 사용하면 사전 정의된 코드 경로로 서버 내에서 사용자 정의 코드를 실행할 수 있습니다. 이는 통제된 방식으로 동시성 시나리오를 테스트하고 조사하는 데 도움이 됩니다. 이 옵션은 기본적으로 비활성화되어 있습니다. 보다섹션 36.10.14자세한 내용은. 이 옵션은 개발자가 테스트용으로만 사용하도록 고안되었습니다.
--with-segsize-blocks=SEGSIZE_BLOCKS #관계 세그먼트 크기를 블록 단위로 지정하십시오. 둘 다인 경우--세그사이즈 포함그리고 이 옵션이 지정되면 이 옵션이 우선합니다. 이 옵션은 세그먼트 관련 코드를 테스트하기 위한 개발자 전용입니다.
구성환경 변수#위에 설명된 일반 명령줄 옵션 외에도구성은 다양한 환경 변수에 응답합니다. 에서 환경 변수를 지정할 수 있습니다.구성명령줄, 예:
./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'
이 사용법에서 환경 변수는 명령줄 옵션과 거의 다릅니다. 이러한 변수를 미리 설정할 수도 있습니다.
CC 내보내기=/opt/bin/gccCFLAGS='-O2 -파이프' 내보내기./구성
이 사용법은 많은 프로그램의 구성 스크립트가 유사한 방식으로 이러한 변수에 응답하기 때문에 편리할 수 있습니다.
이러한 환경 변수 중 가장 일반적으로 사용되는 것은 다음과 같습니다.CC그리고CFLAGS. C 컴파일러와 다른 C 컴파일러를 선호하는 경우구성선택하면 변수를 설정할 수 있습니다.CC당신이 선택한 프로그램에. 기본적으로,구성선택할 것입니다gcc사용 가능한 경우, 그렇지 않으면 플랫폼의 기본값(보통cc). 마찬가지로, 필요한 경우를 사용하여 기본 컴파일러 플래그를 재정의할 수 있습니다.CFLAGS변수.
다음은 이 방식으로 설정할 수 있는 중요한 변수 목록입니다:
바이슨 #들소 프로그램
CC #C 컴파일러
CFLAGS #C 컴파일러에 전달하는 옵션
CLANG #경로삐걱거리는 소리컴파일 시 인라인을 위해 소스 코드를 처리하는 데 사용되는 프로그램--with-llvm
CPP #C 전처리기
CPPFLAGS #C 전처리기에 전달하는 옵션
CXX #C++ 컴파일러
CXXFLAGS #C++ 컴파일러에 전달할 옵션
DTRACE #위치dtrace프로그램
DTRACEFLAGS #다음으로 전달할 옵션dtrace프로그램
FLEX #플렉스 프로그램
LDFLAGS #실행 파일이나 공유 라이브러리를 연결할 때 사용할 옵션
LDFLAGS_EX #실행 파일만 연결하기 위한 추가 옵션
LDFLAGS_SL #공유 라이브러리만 연결하기 위한 추가 옵션
LLVM_CONFIG #llvm-config다음을 찾는 데 사용되는 프로그램LLVM설치
MSGFMT #msgfmt모국어 지원 프로그램
펄 #펄 인터프리터 프로그램. 이는 PL/Perl 빌드에 대한 종속성을 결정하는 데 사용됩니다. 기본값은펄.
파이썬 #파이썬 인터프리터 프로그램. 이는 PL/Python 빌드에 대한 종속성을 결정하는 데 사용됩니다. 설정되지 않은 경우 다음이 이 순서대로 검색됩니다.python3 파이썬.
TCLSH #Tcl 인터프리터 프로그램. 이는 PL/Tcl 구축을 위한 종속성을 결정하는 데 사용됩니다. 설정되지 않은 경우 다음이 이 순서대로 검색됩니다.tclsh tcl tclsh8.6 tclsh86 tclsh8.5 tclsh85 tclsh8.4 tclsh84.
XML2_CONFIG #xml2-configlibxml2 설치를 찾는 데 사용되는 프로그램
가끔 선택한 세트에 나중에 컴파일러 플래그를 추가하는 것이 유용할 때가 있습니다.구성. 중요한 예는 다음과 같습니다.gcc's-오류옵션은 다음에 포함될 수 없습니다.CFLAGS다음으로 전달됨구성, 왜냐하면 많은 부분이 깨질 것이기 때문입니다.구성의 내장 테스트입니다. 이러한 플래그를 추가하려면 해당 플래그를COPT실행 중 환경 변수만들다. 의 내용COPT다음에 추가됩니다CFLAGS, CXXFLAGS그리고LDFLAGS옵션 설정자구성. 예를 들어 다음과 같이 할 수 있습니다.
COPT='-Werror'로 만듭니다.
또는
COPT='-Werror' 내보내기만들다
GCC를 사용하는 경우 최소한의 최적화 수준으로 빌드하는 것이 가장 좋습니다.-O1, 최적화를 스포츠 토토 베트맨지 않기 때문에(-O0)는 일부 중요한 컴파일러 경고(예: 초기화되지 않은 변수 사용)를 비활성화합니다. 그러나 0이 아닌 최적화 수준은 컴파일된 코드를 단계별로 실행하는 것이 일반적으로 소스 코드 줄과 일대일로 일치하지 않기 때문에 디버깅을 복잡하게 만들 수 있습니다. 최적화된 코드를 디버깅하는 동안 혼란스러운 경우 다음을 사용하여 관심 있는 특정 파일을 다시 컴파일하세요.-O0. 이를 수행하는 쉬운 방법은 옵션을 다음으로 전달하는 것입니다.만들다: PROFILE=-O0 파일을 만듭니다.o.
그COPT그리고프로필환경 변수는 실제로 다음에서 동일하게 처리됩니다.PostgreSQLmakefiles. 어느 것을 사용할지는 선호도의 문제이지만 개발자들 사이의 일반적인 습관은 다음과 같습니다.프로필일회성 플래그 조정용, 반면COPT항상 설정된 상태로 유지될 수 있습니다.
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.