Home Explore Blog CI



postgresql

4th chunk of `doc/src/sgml/installation.sgml`
f1ae5cf63ccbb4a64e6563c5f17ecb0392fa9b69561091210000000100000fa0
 <application>PL/Perl</application>, you should ensure that the
      <productname>Perl</productname> installation was built with the
      <literal>usemultiplicity</literal> option enabled (<literal>perl -V</literal>
      will show whether this is the case).
     </para>
    </listitem>

    <listitem>
     <para>
      To build the <application>PL/Python</application> server programming
      language, you need a <productname>Python</productname>
      installation with the header files and
      the <application>sysconfig</application> module.  The minimum
      supported version is <productname>Python</productname> 3.6.8.
     </para>

     <para>
      Since <application>PL/Python</application> will be a shared
      library, the <indexterm><primary>libpython</primary></indexterm>
      <filename>libpython</filename> library must be a shared library
      also on most platforms.  This is not the case in a default
      <productname>Python</productname> installation built from source, but a
      shared library is available in many operating system
      distributions.  <filename>configure</filename> will fail if
      building <application>PL/Python</application> is selected but it cannot
      find a shared <filename>libpython</filename>.  That might mean that you
      either have to install additional packages or rebuild (part of) your
      <productname>Python</productname> installation to provide this shared
      library.  When building from source, run <productname>Python</productname>'s
      configure with the <literal>--enable-shared</literal> flag.
     </para>
    </listitem>

    <listitem>
     <para>
      To build the <application>PL/Tcl</application>
      procedural language, you of course need a <productname>Tcl</productname>
      installation.  The minimum required version is
      <productname>Tcl</productname> 8.4.
     </para>
    </listitem>

    <listitem>
     <para>
      To enable Native Language Support (<acronym>NLS</acronym>), that
      is, the ability to display a program's messages in a language
      other than English, you need an implementation of the
      <application>Gettext</application> <acronym>API</acronym>.  Some operating
      systems have this built-in (e.g., <systemitem
      class="osname">Linux</systemitem>, <systemitem class="osname">NetBSD</systemitem>,
      <systemitem class="osname">Solaris</systemitem>), for other systems you
      can download an add-on package from <ulink
      url="https://www.gnu.org/software/gettext/"></ulink>.
      If you are using the <application>Gettext</application> implementation in
      the <acronym>GNU</acronym> C library, then you will additionally
      need the <productname>GNU Gettext</productname> package for some
      utility programs.  For any of the other implementations you will
      not need it.
     </para>
    </listitem>

    <listitem>
     <para>
      You need <productname>OpenSSL</productname>, if you want to support
      encrypted client connections.  <productname>OpenSSL</productname> is
      also required for random number generation on platforms that do not
      have <filename>/dev/urandom</filename> (except Windows).  The minimum
      required version is 1.1.1.
     </para>
     <para>
      Additionally, <productname>LibreSSL</productname> is supported using the
      <productname>OpenSSL</productname> compatibility layer.  The minimum
      required version is 3.4 (from <systemitem class="osname">OpenBSD</systemitem>
      version 7.0).
     </para>
    </listitem>

    <listitem>
     <para>
      You need <application>MIT Kerberos</application> (for GSSAPI),
      <productname>OpenLDAP</productname>, and/or <application>PAM</application>,
      if you want to support authentication using those services.
     </para>
    </listitem>

    <listitem>
     <para>
      You need <productname>Curl</productname> to build an optional module
      which implements the <link linkend="libpq-oauth">OAuth Device
 

Title: Additional Dependencies for PostgreSQL
Summary
To enable various features in PostgreSQL, such as programming languages, encryption, and authentication, additional dependencies are required, including Perl, Python, Tcl, Gettext, OpenSSL, LibreSSL, Kerberos, OpenLDAP, PAM, and Curl, with specific version requirements and installation considerations.