PostgreSQL 10.1 手册_部分 III. 服务器管理_第 16 章 从源代码安装_16.2. 要求
16.2. 要求
一般说来,一个现代的与 Unix 兼容的平台应该就能运行PostgreSQL。 到发布为止已经明确测试过的平台的列表在 第 16.6 节中列出。在发布的doc
子目录里面有许多平台相关的 FAQ文档,如果你碰到问题你可能会需要参考它们。
编译PostgreSQL需要下列软件包:
-
要求GNU make版本3.80或以上;其他的make程序或更老的GNU make版本将不会工作(GNU make有时以名字
gmake
安装)。要测试GNU make可以输入:make --version
-
你需要一个ISO/ANSI C 编译器(至少是 C89兼容的)。我们推荐使用最近版本的GCC,不过,众所周知的是PostgreSQL可以利用许多不同厂商的不同编译器进行编译。
-
除了gzip和bzip2之外,我们还需要tar来解包源代码发布。
-
默认时将自动使用GNU Readline库。它允许psql(PostgreSQL的命令行 SQL 解释器)记住你输入的每一个命令并且允许你使用箭头键来找回和编辑之前的命令。如果你不想用它,那么你必需给
configure
声明--without-readline
选项。作为一种可选方案,你常常可以使用 BSD许可证的libedit
库,它最初是在NetBSD上开发的。libedit
库是GNU Readline兼容的, 如果没有发现libreadline
或者configure
使用了--with-libedit-preferred
选项,都会使用这个库。如果你使用的是一个基于包的 Linux 发布,那么要注意你需要readline
和readline-devel
两个包,特别是如果这两个包在你的版本里是分开的时候。 -
默认的时候将使用zlib压缩库。 如果你不想使用它,那么你必须给
configure
声明--without-zlib
选项。使用这个选项关闭了在pg_dump和pg_restore中对压缩归档的支持。
下列包是可选的。在默认配置的时候并不要求它们,但是如果打开了一些编译选项之后就需要它们了,如下文所解释的:
-
要编译服务器端编程语言PL/Perl,你需要一个完整的 Perl安装,包括
libperl
库和头文件。 所需的最低版本是Perl 5.8.3。 因为PL/Perl是一个共享库,libperl
库在大多数平台上也必须是一个共享库。最近的版本的 Perl好像已经默认这样做了,但是早先的版本可不是 这样的,而且这总是一种在站点上安装 Perl 的选择。如果选择了编译 PL/Perl但是它却找不到一个共享的libperl
,那么configure
将会失败。 在这种情况下,你将不得不重新手工编译并且安装Perl 以便能编译PL/Perl。在 Perl的配置处理过程中,需要一个共享库。如果你想更多地使用PL/Perl, 你应当保证Perl安装在编译时启用了
usemultiplicity
选项(perl -V
将会显示是否是这样)。 -
要编译PL/Python服务器端编程语言, 你需要一个Python的安装,包括头文件和distutils模块。最低的版本要求是Python 2.4。如果是版本3.1或更高版本,则支持Python 3,如果使用 Python 3 请参考。 第 45.1 节
因为PL/Python将以共享库的方式编译,
libpython
库在大多数平台上也必须是一个共享库。 在默认的从源码安装Python时不是这样的, 而是在很多操作系统发布中有一个共享库可用。如果选择了编译 PL/Python但找不到一个共享的libpython
,configure
将 会失败。这可能意味着你不得不安装额外的包或者(部分)重编译 Python安装以提供这个共享库。 在从源码编译时,请用--enable-shared
标志运行 Python的配置脚本。 -
如果你想编译PL/Tcl过程语言, 你当然需要安装Tcl,要求的最低版本是 Tcl 8.4。
-
要打开本地语言支持(NLS),也就是说, 用英语之外的语言显示程序的消息,你需要一个Gettext API的实现。有些操作系统内置了这些(例如Linux、NetBSD、Solaris), 对于其它系统,你可以从http://www.gnu.org/software/gettext/下载一个额外的包。如果你在使用GNU C 库里面的Gettext实现, 那么你就额外需要GNU Gettext包,因为我们需要里面的几个工具程序。对于任何其它的实现,你应该不需要它。
-
如果您想支持加密的客户端连接,则需要OpenSSL。最低要求的版本是0.9.8。
-
如果你想支持使用Kerberos、OpenLDAP和/或PAM服务的认证,那你需要相应的包。
-
要编译PostgreSQL文档,有一些独立的要求集,请见第 J.2 节. 。
如果你正从Git树而不是使用发布的源代码包进行编译,或者你想做服务器端开发, 那么你还需要下面的包:
如果你需要获取GNU包,你可以在你的本地GNU镜像站点 (看看 http://www.gnu.org/order/ftp.html或ftp://ftp.gnu.org/gnu/找到它们。
还要检查一下你是否有足够的磁盘空间。你将大概需要近 100MB 用于存放编译过程中的源码树和大约 20 MB 用于安装目录。 一个空数据库集簇大概需要 35 MB。一个数据库所占的空间大约是存储同样数据的平面文件所占空间的五倍。如果你要运行回归测试,还临时需要额外的 150MB。请用df
命令检查剩余磁盘空间。
本文转自PostgreSQL中文社区,原文链接:16.2. 要求
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
WinForm基于插件开发实现多项配置存储
一、课程介绍和实例在线演示 明人不说暗话,跟着阿笨一起玩WinForm。本次分享课程属于《C#高级编程实战技能开发宝典课程系列》中的一部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集、整理和完善此系列课程! 本次分享课程给大家带来一个WinForm基于开发实现多项配置存储的实战技能课程,希望对的没有接触过C/S架构开发的童鞋有一定的了解和认识吧,如果您对本次分享课程感兴趣的话,那么请跟着一起学习吧! 1.1、今天我们要学习的课程内容以及知识点? 一般的应用程序都会有基础设置功能模块,有时候当我们的基础设置数据项比较多的情况时候,你是否还在为重复和繁琐的数据项保存功能开发工作而感到烦恼?我们能否有一种优雅的通用处理框架来解决呢?答案是肯定的!阿笨根据自己的实际工作经验出发,站在第一线开发者的角度,因此总结并分享给大家一种解决方案———WinForm通过插件开发机制实现动态加载UI界面,采用面向对象中的三大特性(封装,继承,多态)来实现多项数据配置存储。 1.2、一句话总结今天我们要解决的问题? WinForm如何通过优雅的方式实现应...
- 下一篇
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 16 章 从源代码安装_16.7. 平台相关的说明
16.7.平台相关的说明 16.7.1. AIX 16.7.2. Cygwin 16.7.3. HP-UX 16.7.4. MinGW/原生 Windows 16.7.5. Solaris 这一节提供了考虑 PostgreSQL 安装和设置的附加平台相关的话题。确保阅读安装指导,特别是第16.2节。同样,检查关于回归测试结果解释的第32章。 这里没有覆盖的平台不存在平台相关的安装问题。 16.7.1.AIX PostgreSQL 能在 AIX 上工作,但是正确地安装它却富有挑战性。从4.3.3到6.1的 AIX 被认为是可支持的。你可以使用 GCC 或本地 IBM 编译器xlc。通常,使用最新版本的 AIX 和 PostgreSQL 能有所帮助。在编译农场中检查有关已知能工作的 AIX 版本的最新信息。 被支持的 AIX 版本的最小推荐修理级别是: AIX 4.3.3 Maintenance Level 11 + post ML11 bundle AIX 5.1 Maintenance Level 9 + post ML9 bundle AIX 5.2 Technology Level...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Hadoop3单机部署,实现最简伪集群
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果