17.7. 플랫폼 별 노트#

이 섹션에서는 토토 꽁 머니의 설치 및 설정에 관한 추가 플랫폼 별 문제를 문서화합니다. 설치 지침을 읽으십시오. 특히섹션 17.1또한 check31 장회귀 테스트 결과의 해석과 관련하여

여기서 다루지 않은 플랫폼은 알려진 플랫폼 별 설치 문제가 없습니다.

17.7.1. Cygwin#

토토 꽁 머니은 Windows의 Linux와 같은 환경 인 Cygwin을 사용하여 구축 할 수 있지만 해당 방법은 기본 Windows 빌드보다 열등하며 Cygwin 하에서 서버를 실행하는 것이 권장되지 않습니다..

소스에서 빌드 할 때 Unix 스타일 설치 절차에 따라 진행하십시오 (예 :./configure; 만들다; 등)

  • Windows 유틸리티 전에 Cygwin bin 디렉토리를 사용하도록 경로를 설정하십시오. 이것은 컴파일 문제를 방지하는 데 도움이됩니다.

  • theAdduser명령은 지원되지 않습니다. Windows에서 적절한 사용자 관리 응용 프로그램을 사용하십시오.

  • theSU명령은 지원되지 않습니다. SSH를 사용하여 Windows에서 SU를 시뮬레이션하십시오.

  • OpenSSL지원되지 않습니다.

  • 시작Cygserver공유 메모리 지원. 이렇게하려면 명령을 입력하십시오/usr/sbin/cygserver &. 이 프로그램은 토토 꽁 머니 서버를 시작하거나 데이터베이스 클러스터를 초기화 할 때마다 실행해야합니다 (initdb). 기본값Cygserver구성을 변경해야 할 수도 있습니다 (예 : 증가SEMMNS) 시스템 리소스 부족으로 인해 토토 꽁 머니이 실패하지 않도록합니다.

  • C 이외의 로케일이 사용되는 일부 시스템에서는 건물이 실패 할 수 있습니다. 이것을 고치려면, 로케일을 c로 설정하십시오Export Lang = C.UTF8빌딩하기 전에 토토 꽁 머니을 설치 한 후 이전 설정으로 다시 설정합니다.

  • 병렬 회귀 테스트 (확인) 오버플레이션으로 인해 가짜 회귀 테스트 실패를 생성 할 수 있습니다Listen ()연결 거부 또는 매달린 연결을 유발하는 백 로그 큐. make variable을 사용하여 연결 수를 제한 할 수 있습니다max_connection따라서 :

    make max_connections = 5 점검

    (일부 시스템에서는 최대 약 10 개의 동시 연결을 가질 수 있습니다.)

설치할 수 있습니다Cygserver및 토토 꽁 머니 서버는 Windows NT 서비스입니다. 이 작업을 수행하는 방법에 대한 자세한 내용은를 참조하십시오.readmeCygwin의 토토 꽁 머니 바이너리 패키지에 포함 된 문서. 디렉토리에 설치되어 있습니다/usr/share/doc/cygwin.

17.7.2. MacOS#

빌드토토 꽁 머니소스에서MacOS, 발행하여 수행 할 수있는 Apple의 명령 줄 개발자 도구를 설치해야합니다

Xcode-Select-Install

(확인을 위해 GUI 대화 창이 나타납니다). Xcode를 설치하고 싶거나 원하지 않을 수도 있습니다.

최근MacOS릴리스,를 포함시켜야합니다Sysroot일부 시스템 헤더 파일을 찾는 데 사용되는 스위치의 경로. 이로 인해의 출력이 발생합니다.구성스크립트는 어떤 SDK 버전이 사용되었는지에 따라에 따라 다양합니다.구성. 간단한 시나리오에서는 문제가되지 않아야하지만 서버 코드가 구축 된 것과 다른 시스템에서 확장을 구축하는 것과 같은 작업을 수행하려는 경우 다른 Sysroot 경로를 강제로 사용해야 할 수도 있습니다.PG_SYSROOT, 예를 들어

PG_SYSROOT =/원하는/pathall

컴퓨터의 적절한 경로를 찾으려면 run

Xcrun--show-sdk-path

핵심 서버를 빌드하는 데 사용 된 것과 다른 sysroot 버전을 사용하여 확장을 구축하는 것은 실제로 권장되지 않습니다. 최악의 경우에 버그가 어려운 ABI 불일치가 발생할 수 있습니다.

지정하여 구성 할 때 비 디펜트 SYSROOT 경로를 선택할 수도 있습니다PG_SYSROOTto구성:

./configure ... pg_sysroot =/원하는/path

이것은 주로 다른 MACOS 버전의 크로스 컴파일에 유용합니다. 결과 실행 파일이 현재 호스트에서 실행 될 것이라는 보장은 없습니다.

억제하려면-isysroot옵션 전혀 옵션

./configure ... pg_sysroot = none

(존재하지 않는 PathName이 작동합니다). 이는 외부 컴파일러를 사용하지 않으려면 유용 할 수 있지만 토토 꽁 머니 개발자가 해당 케이스를 테스트하거나 지원하지 않음을주의하십시오..

MacOS's시스템 무결성 보호(SIP) 기능 브레이크확인, 필요한 설정이 전달되는 것을 방지하기 때문에dyld_library_path테스트중인 실행 파일로 내려갑니다. 당신은 그 일을 할 수 있습니다설치확인. 그래도 대부분의 토토 꽁 머니 개발자는 SIP를 꺼냅니다.

17.7.3. mingw#

Windows 용 토토 꽁 머니은 Microsoft 운영 체제를위한 Unix와 같은 빌드 환경 인 Mingw를 사용하여 구축 할 수 있습니다. Mingw 빌드 프로 시저는이 장에 설명 된 일반 빌드 시스템을 사용합니다.

Mingw, Unix-like 빌드 도구 및 MSYS, 쉘 스크립트를 실행하는 데 필요한 Unix 도구 모음구성,에서 다운로드 할 수 있습니다또는. 결과 바이너리를 운영 할 필요는 없습니다.

mingw를 사용하여 64 비트 바이너리를 빌드하려면 64 비트 도구 세트를 설치하십시오.또는, 빈 디렉토리를에 넣으십시오.PATH, run구성with-host = x86_64-w64-mingw32옵션.

모든 것을 설치 한 후에는 실행하는 것이 좋습니다PSQLunderCMD.EXE, MSYS 콘솔에 버퍼링 문제가 발생함에 따라

17.7.3.1. 충돌 덤프 수집#

Windows의 토토 꽁 머니이 충돌하면 생성 할 수 있습니다MinidumpsUNIX의 코어 덤프와 유사한 충돌 원인을 추적하는 데 사용할 수 있습니다. 이 덤프는를 사용하여 읽을 수 있습니다.Windows 디버거 도구또는 사용Visual Studio. Windows에서 덤프 생성을 활성화하려면라는 하위 디렉토리를 만듭니다.Crashdumps클러스터 데이터 디렉토리 내부. 그런 다음 덤프는 충돌 프로세스의 식별자와 현재 충돌 시간을 기반으로 고유 한 이름 으로이 디렉토리에 기록됩니다.

17.7.4. Solaris#

토토 꽁 머니은 Solaris에 잘 지원됩니다. 운영 체제가 최신 상태 일수록 경험이 적습니다.

17.7.4.1. 필수 도구#

GCC 또는 Sun의 컴파일러 제품군으로 빌드 할 수 있습니다. 더 나은 코드 최적화를 위해 SPARC 아키텍처에서 Sun의 컴파일러가 강력히 권장됩니다./usr/ucb/cc; 사용/opt/sunwspro/bin/cc.

당신은 Sun Studio를 다운로드 할 수 있습니다to. 많은 GNU 도구가 Solaris 10에 통합되거나 Solaris Companion CD에 존재합니다.SU. 출처를 선호하는 경우또는.

17.7.4.2. 실패한 테스트 프로그램에 대한 불만 구성#

if구성실패한 테스트 프로그램에 대해 불만을 제기 할 수 있습니다. 이것은 아마도 런타임 링커가 Libz, Libreadline 또는 LIBSSL과 같은 다른 비표준 비표준 라이브러리를 찾을 수없는 경우 일 것입니다. 올바른 위치를 가리려면를 설정하십시오.ldflags환경 변수구성명령 줄 (예 :

구성 ... ldflags = "-r/usr/sfw/lib :/opt/sfw/lib :/usr/local/lib"

참조ld자세한 내용은 맨 페이지.

17.7.4.3. 최적의 성능을위한 컴파일#

SPARC 아키텍처에서 Sun Studio는 컴파일에 강력히 권장됩니다. 사용해보십시오.-xo5최적화 플래그가 훨씬 빠른 바이너리를 생성합니다. 부동 소수점 작업의 동작을 수정하는 플래그를 사용하지 마십시오.errno처리 (예 :-fast).

SPARC에서 64 비트 바이너리를 사용할 이유가 없다면 32 비트 버전을 선호하십시오. 64 비트 작업은 느리고 64 비트 바이너리는 32 비트 변형보다 느립니다.

17.7.4.4. 토토 꽁 머니 추적에 dtrace 사용#

예, dtrace 사용이 가능합니다. 보다섹션 27.5자세한 내용은

링크가 표시되면Postgres실행 가능한 오류 메시지와 같은 실행 중단 :

정의되지 않은 첫 번째 참조 파일의 기호

DTRACE 설치가 너무 오래되어 정적 기능으로 프로브를 처리 할 수 ​​없습니다. dtrace를 사용하려면 Solaris 10U4 또는 최신 정보가 필요합니다.

17.7.5. 비주얼 스튜디오#

대부분의 사용자는 Windows 용 바이너리 배포를 다운로드하는 것이 좋습니다.토토 꽁 머니웹 사이트 at토토 결과 : 다운로드. 출처에서 건물은 개발하는 사람들을위한 것입니다토토 꽁 머니또는 확장.

Visual Studio가있는 Windows 용 토토 꽁 머니에 설명 된대로 Meson을 사용하여 구축 할 수 있습니다.섹션 17.4. 기본 Windows 포트에는 32 또는 64 비트 버전의 Windows 10 이상이 필요합니다.

기본 빌드의PSQL명령 줄 편집을 지원하지 마십시오. 그만큼CygwinBuild는 명령 줄 편집을 지원하므로 대화식 사용을 위해 PSQL이 필요한 경우Windows.

토토 꽁 머니은 Microsoft의 Visual C ++ 컴파일러 제품군을 사용하여 구축 할 수 있습니다. 이 컴파일러는에서 나올 수 있습니다.Visual Studio, Visual Studio Express또는 일부 버전의Microsoft Windows SDK. 당신이 아직가 없다면Visual Studio환경 설정에서 가장 쉬운 방법은의 컴파일러를 사용하는 것입니다.Visual Studio 2022또는Windows SDK 10, Microsoft의 무료 다운로드입니다.

Microsoft Compiler Suite에서는 32 비트 및 64 비트 빌드가 모두 가능합니다. 32 비트 토토 꽁 머니 빌드가 가능합니다.Visual Studio 2015toVisual Studio 2022및 독립형 Windows SDK는 10 이상을 릴리스합니다. 64 비트 토토 꽁 머니 빌드는 지원됩니다.Microsoft Windows SDK버전 10 이상 또는Visual Studio 2015이상.

빌드 환경이 지원되는 버전의 배송되지 않으면Microsoft Windows SDK최신 버전 (현재 버전 10)으로 업그레이드하는 것이 좋습니다.https://www.microsoft.com/download.

항상 포함해야합니다Windows 헤더 및 라이브러리SDK의 일부. a를 설치하는 경우Windows SDK포함Visual C ++ 컴파일러, 필요하지 않습니다Visual Studio빌드. 버전 8.0A 기준으로 Windows SDK는 더 이상 완전한 명령 줄 빌드 환경을 제공하지 않습니다.

17.7.5.1. 요구 사항#

다음 추가 제품이 구축해야합니다토토 꽁 머니on Windows.

Strawberry Perl

빌드 생성 스크립트를 실행하려면 딸기 Perl이 필요합니다. Mingw 또는 Cygwin Perl은 작동하지 않습니다.https://strawberryperl.com.

BisonandFlex

BisonandFlex필요합니다. 오직Bison버전 2.3 이상이 작동합니다.Flex버전 2.5.35 이상이어야합니다.

둘 다BisonandFlexMSYS도구 스위트,또는의 일부로Mingw컴파일러 스위트.

포함하는 디렉토리를 추가해야합니다flex.exeandbison.exe경로 환경 변수. Mingw의 경우 디렉토리는입니다.\ msys \ 1.0 \ binMINGW 설치 디렉토리의 하위 디렉토리.

Note

GNUWIN32의 들소 분포에는 이름에 공백이있는 디렉토리에 설치 될 때 영어 설치의 기본 위치와 같은 디렉토리에 디렉토리에 설치 될 때 Bison이 오작동에 해당하는 버그가있는 것으로 보입니다.C : \ Program Files \ gnuwin32. 설치를 고려C : \ gnuwin32또는 경로 환경 설정에서 NTFS 짧은 이름 경로를 GNUWIN32로 사용하십시오 (예 :C : \ Progra ~ 1 \ gnuwin32).

다음 추가 제품은 시작할 필요가 없지만 전체 패키지를 구축해야합니다.

MagicsPlat Tcl

건물이 필요합니다PL/TCL. Binaries는에서 다운로드 할 수 있습니다.all.

diff

회귀 테스트를 실행하려면 Diff가 필요하며에서 다운로드 할 수 있습니다.또는.

getText

GetText는 NLS 지원으로 빌드해야하며에서 다운로드 할 수 있습니다또는. 바이너리, 종속성 및 개발자 파일이 모두 필요합니다.

MIT Kerberos

GSSAPI 인증 지원이 필요합니다. MIT Kerberos는에서 다운로드 할 수 있습니다.https://web.mit.edu/Kerberos/dist/index.html.

libxml2andlibxslt

XML 지원이 필요합니다. Binaries는에서 다운로드 할 수 있습니다.https://zlatkovic.com/pub/libxml또는 소스또는. libxml2는 동일한 다운로드 위치에서 사용할 수있는 Iconv가 필요합니다.

LZ4

지원에 필요LZ4압축. 바이너리와 소스는에서 다운로드 할 수 있습니다.https://github.com/lz4/lz4/releases.

Zstandard

지원에 필요Zstandard압축. 바이너리와 소스는에서 다운로드 할 수 있습니다.https://github.com/facebook/zstd/releases.

OpenSSL

SSL 지원이 필요합니다. Binaries는에서 다운로드 할 수 있습니다.OpenSSL또는 소스또는.

OSSP-UUID

UUID-SOSSP 지원에 필요합니다 (Contrib Only). 소스는에서 다운로드 할 수 있습니다.또는.

Python

건물이 필요합니다pl/python. Binaries는에서 다운로드 할 수 있습니다.또는.

Zlib

압축 지원이 필요합니다pg_dumpandPG_RESTORE. Binaries는에서 다운로드 할 수 있습니다.Zlib.

17.7.5.2. 64 비트 Windows에 대한 특별 고려 사항#

토토 꽁 머니은 64 비트 Windows에서 X64 아키텍처에 대해서만 빌드됩니다.

동일한 빌드 트리에서 32- 및 64 비트 버전을 믹싱하는 것은 지원되지 않습니다. 빌드 시스템은 32 개 또는 64 비트 환경에서 실행 중인지 자동으로 감지하고 그에 따라 토토 꽁 머니을 빌드합니다.

와 같은 서버 측 제 3 자 라이브러리를 사용하려면Python또는OpenSSL,이 라이브러리필수또한 64 비트입니다. 64 비트 서버에서 32 비트 라이브러리로드에 대한 지원은 없습니다.

17.7.5.3. 충돌 덤프 수집#

Windows의 토토 꽁 머니이 충돌하면 생성 할 수 있습니다MinidumpsUNIX의 코어 덤프와 유사한 충돌 원인을 추적하는 데 사용할 수 있습니다. 이 덤프는를 사용하여 읽을 수 있습니다.Windows 디버거 도구또는 사용Visual Studio. Windows에서 덤프 생성을 활성화하려면라는 하위 디렉토리를 만듭니다.Crashdumps클러스터 데이터 디렉토리 내부. 그런 다음 덤프는 충돌 프로세스의 식별자와 현재 충돌 시간을 기반으로 고유 한 이름 으로이 디렉토리에 기록됩니다.

정정 제출

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