9.3 9.4 9.5 9.6 10 11 12 13 14 15 Current(16) 17
问题报告 纠错本页面
17.2. 要求
上一页 上一级 第 17 章 从源代码安装起始页 下一页

17.2. 要求

一般说来,一个现代的与 Unix 兼容的平台应该就能运行PostgreSQL。 到发布为止已经明确测试过的平台的列表在 第 17.6 节中进行了描述。

构建PostgreSQL需要以下软件包:

  • 需要GNU make版本3.81或更新版本;其他 make程序或旧版GNU make无法工作。 (GNU make有时安装为 名称gmake。)要测试GNU make是否安装,输入:

    make --version
    
  • 需要一个ISO/ANSI C编译器(至少符合C99标准)。推荐使用 最新版本的GCC,但 已知PostgreSQL可以使用来自不同供应商的各种编译器进行构建。

  • 需要tar来解压源代码 发行版,还需要gzipbzip2之一。

  • 默认使用GNU Readline库。它允许psql( PostgreSQL命令行SQL解释器)记住您输入的每个命令,并允许您使用箭头键来回忆和 编辑以前的命令。这非常有帮助,强烈推荐使用。如果您不想使用它,则必须在 configure中指定--without-readline选项。 作为替代,您通常可以使用BSD许可的libedit库,最初 在NetBSD上开发。如果找不到libreadline,或者 使用--with-libedit-preferred作为 configure的选项,则使用libedit库。 如果您使用基于软件包的Linux发行版,请注意您需要 readlinereadline-devel包,如果 在您的发行版中是分开的。

  • 默认使用zlib压缩库。如果您不想使用它,则必须 在configure中指定--without-zlib选项。 使用此选项将禁用pg_dumppg_restore中的压缩归档支持。

以下软件包是可选的。它们在默认配置中不是必需的,但在启用某些构建选项时是必需的,如下所述:

  • 要构建服务器编程语言PL/Perl,您需要完整的Perl安装, 包括libperl库和头文件。最低要求版本是Perl 5.8.3。 由于PL/Perl将是一个共享库,在大多数平台上 libperl库也必须是一个共享库。这似乎是最近Perl版本的默认设置, 但在早期版本中不是这样,在任何情况下,这是在您的站点安装Perl的人的选择。configure将失败, 如果选择构建PL/Perl但找不到共享libperl。在这种情况下, 您将不得不手动重新构建和安装Perl以便能够构建PL/Perl。 在为Perl的配置过程中,请求一个共享库。

    如果您打算更多地使用PL/Perl,您应该确保Perl安装是使用usemultiplicity选项构建的(perl -V将显示是否是这种情况)。

  • 要构建PL/Python服务器编程语言,您需要安装Python 并具有头文件以及sysconfig模块。所需的最低版本是Python 3.2。

    由于PL/Python将是一个共享库, libpython库在大多数平台上也必须是一个共享库。这在默认的 Python源码构建的安装中并非如此,但在许多操作系统 发行版中提供了一个共享库。configure如果选择构建 PL/Python但找不到共享的libpython,将会失败。 这可能意味着您需要安装额外的软件包或重新构建(部分)Python安装以提供这个共享库。 在从源代码构建时,使用Python的configure命令带上--enable-shared标志。

  • 要构建PL/Tcl过程语言,您当然需要安装Tcl。 最低要求的版本是Tcl 8.4。

  • 要启用本地语言支持(NLS),也就是能够以英语以外的语言显示程序的消息,您需要一个Gettext API的实现。 一些操作系统已经内置了这个功能(例如,Linux,NetBSD,Solaris), 对于其他系统,您可以从https://www.gnu.org/software/gettext/下载一个附加包。 如果您正在使用GettextGNU C库中的实现,那么您还需要一些实用程序的GNU Gettext包。 对于其他任何实现,您将不需要它。

  • 如果您想支持加密客户端连接,您需要OpenSSL。 在没有/dev/urandom(除了Windows)的平台上, 也需要OpenSSL来生成随机数。最低要求版本为1.0.1。

  • 您需要Kerberos,OpenLDAP, 和/或PAM,如果您想要支持使用这些服务进行身份验证。

  • 如果您想要支持使用该方法对数据进行压缩,您需要LZ4;请参见 default_toast_compressionwal_compression

  • 如果您想要支持使用该方法对数据进行压缩,您需要Zstandard;请参见wal_compression。 最低要求版本为1.4.0。

  • 要构建PostgreSQL文档,需要满足一组单独的要求;请参见第 J.2 节

如果你正从Git树而不是使用发布的源代码包进行编译,或者你想做服务器端开发, 那么你还需要下面的包:

  • 如果你需要从 Git 检出中编译,或者你修改了实际的扫描器和分析器的定义文件, 那么你需要 GNU FlexBison。 如果你需要它们,那么确保自己拿到的是Flex 2.5.31 或更新的版本, 以及Bison 1.875 或者更新的版本。不能使用其他lexyacc程序。

  • 如果需要从 Git 检出中编译,或者你修改了任何使用 Perl 脚本的编译步骤的输入文件,那么你需要Perl 5.8.3或以后的版本。如果你在 Windows 上编译,你在任何情况下都需要Perl。运行一些测试套件时也需要Perl

如果你需要获取GNU包,你可以在你的本地GNU镜像站点 (看看 https://www.gnu.org/prep/ftpftp://ftp.gnu.org/gnu/找到它们。

还要检查一下你是否有足够的磁盘空间。你将大概需要近 350 MB 用于存放编译过程中的源码树和大约 40 MB 用于安装目录。 一个空数据库集簇大概需要 35 MB。一个数据库所占的空间大约是存储同样数据的平面文件所占空间的五倍。 如果你要运行回归测试,还临时需要额外的 300 MB。请用df命令检查剩余磁盘空间。


上一页 上一级 下一页
17.1. 简单版 起始页 17.3. 获取源码

AltStyle によって変換されたページ (->オリジナル) /