16.4.1. configure Options
作者:互联网
16.4.1.configure选项
以下对configure的部分选项进行解释(使用./configure --help获取更多帮助)。
16.4.1.1.安装路径
该选项控制make install命令安装文件路径。大部分情况下,均可使用--prefix选项。
--prefix=PREFIX
将所有文件放置到PREFIX指定的路径下(而非默认的/usr/local/pgsql)。
--exec-prefix=EXEC-PREFIX
将体系结构相关的文件放置到与PREFIX不同的路径下。
--bindir=DIRECTORY
可执行文件路径。默认为EXEC-PREFIX/bin,即默认为/usr/local/pgsql/bin。
--sysconfdir=DIRECTORY
配置文件路径。默认为PREFIX/etc。
--libdir=DIRECTORY
设置库及动态加载模块安装路径。默认为EXECPREFIX/lib
--includedir=DIRECTORY
C和C++头文件所在路径,默认为PREFIX/include。
--datarootdir=DIRECTORY
只读数据文件的根目录。默认为PREFIX/share
--localedir=DIRECTORY
本地数据,特别是信息翻译库文件的存放路径。默认为DATAROOTDIR/locale
--mandir=DIRECTORY
PostgreSQL的主页面所在路径。默认为DATAROOTDIR/man
--docdir=DIRECTORY
文档文件的路径。默认为DATAROOTDIR/doc/postgresql。
--htmldir=DIRECTORY
PostgreSQL的HTML格式文档的安装路径。默认为DATAROOTDIR。
16.4.1.2.PostgreSQL特性
本节介绍创建PostgreSQL非默认特性的选项。之所以这些特性为非默认的,是因为它们依赖于其他的软件,参见第16.2章节。
--enable-nls[=LANGUAGES]
启用本地语言支持(NLS)。若不指定LANGUAGE,则会安装所有可用的语言。
需要Gettext API。
--with-perl
创建PL/Perl服务端语言。
--with-python
创建PL/Python服务端语言。
--with-tcl
创建PL/Tcl服务端语言。
--with-tclconfig=DIRECTORY
tcl配置文件tclConfig.sh所在路径。
--with-icu
支持ICU(International Component for Unicode)库,参见第23.2章节。需要安装ICU4C包,版本至少为4.2。
--with-llvm
构建基于JIT的LLVM支持(参见第31章)。需要安装LLVM库,最低版本为3.9。
--with-openssl
支持SSL(加密)连接。需要安装OpenSSL。
--with-gssapi
支持GSSAPI加密。
--with-ldap
支持LDAP认证及连接参数查看(参加第33.17章节以及第20.10章节)。unix下需要安装OpenLDAP包,windows下,需要安装WinLDAP包。
--with-pam
支持PAM(Pluggable Authentication Modules,可拔插认证模块)。
--with-bsd-auth
支持BSD认证。
--with-systemd
支持systemd服务提醒。参见第18.3章节。需要安装libsystemd及其相关文件。
--with-bonjour
支持Bonjour自动服务发现。
--with-uuid=LIBRARY
创建使用指定UUID库的uuid-ossp模块(提供生成UUID的功能)。LIBRARY需为以下之一:
-
bsd
-
e2fs
-
ossp
--with-ossp-uuid
等同--with-uuid=ossp。
--with-libxml
支持SQL/XML。需要安装Libxml2 2.6.23及更新版本。
--with-libxslt
使用libxslt构建,启用xml2模块从而可以从xml到xsl的转换。必须同时指定--withlibxml
16.4.1.3.关闭特性
本节介绍关闭某些默认创建的PostgreSQL特性。如非必要,无需执行。
--without-readline
禁用readline。使得无法在命令行psql编辑和使用历史命令。
--with-libedit-preferred
使用BSD-licensed libedit库而非GPL-licensed ReadLine。默认使用ReadLine。
--without-zlib
不使用zlib库。
--disable-spinlocks
即使PostgreSQL不支持平台的CPU自旋锁,也可以构建成功。使用此选项,会导致很严重的数据库性能问题。
--disable-atomics
禁用CPU原子操作。可能导致数据库性能问题。
--disable-thread-safety
禁用客户端库的线程安全。 这样可以防止libpq和ECPG程序中的并发线程安全地控制其专用连接句柄。 仅在线程支持不足的平台上使用此功能。
16.4.1.4.构建过程详情
--with-includes=DIRECTORIES
DIRECTORIES为冒号分隔的列表,编译器从该路径中检索头文件。如果包装在了非默认路径,则需要指定该参数。
示例:--with-includes=/opt/gnu/include:/usr/sup/include
--with-libraries=DIRECTORIES
DIRECTORIES为冒号分隔的列表,内为库文件。
示例:--with-libraries=/opt/gnu/lib:/usr/sup/lib
--with-system-tzdata=DIRECTORY
使用外部的时区数据库。
--with-extra-version=STRING
添加STRING到PostgreSQL版本号上。
--disable-rpath
不要标记PostgreSQL的可执行文件以指示它们应该在安装的库目录中搜索共享库(请参见--libdir)。参见第16.5.1章节。
16.4.1.5 其他
在构建时修改默认端口号--with-pgport。以下参数,限资深用户使用。
--with-pgport=NUMBER
为客户端及服务端设置默认端口号。默认为5432。
--with-krb-srvnam=NAME
GSSAPI使用的Kerberos默认名称。默认为postgres。在windows下,必须设置为POSTGRES。
--with-segsize=SEGSIZE
以GB为单位设置segment size。大表被分为segment size大小的多个文件。默认为1GB。不同segment size,不可使用pg_upgrade升级。
--with-blocksize=BLOCKSIZE
以KB为单位设置block size。此为表中存储及I/O的单位。默认为8kb。值必须为2的1到32次方(kb)。不同block size,不可使用pg_upgrade升级。
--with-wal-blocksize=BLOCKSIZE
以kb为单位,设置WAL block size。此为WAL日志中存储及I/O的单位。默认为8kb。值必须为2的1到64次方(kb)。不同wal block size,不可使用pg_upgrade升级。
16.4.1.6.开发者选项
本节介绍开发及调试PostgreSQL所使用的选项。除了--enable-debug外,其他选项不建议在生产环境使用。对于支持DTrace的操作系统,生产环境也可以启用--enable-dtrace选项。
若构建代码开发服务端,则建议至少启用选项--enable-debug和--enable-cassert。
--enable-debug
以调试模式编译程序及库。即可以在调试模式下运行程序以对问题进行分析。如果使用了GCC编译器,建议启用该选项。
--enable-cassert
在服务端启用断言检查。不建议在生产环境使用该选项。
--enable-tap-tests
启用使用Perl TAP工具进行测试。需要安装Perl及其模块IPC::Run。更多信息,请参见第32.4章节。
--enable-depend
启用自动依赖跟踪。仅支持GCC。
--enable-coverage
如果使用GCC,则所有程序和库都将使用代码覆盖率测试工具进行编译。更多信息,请参见第32.5章节。仅支持GCC。
--enable-profiling
如果使用GCC,则会编译所有程序和库,以便对其进行概要分析。仅支持GCC。
--enable-dtrace
支持动态跟踪工具DTrace。更多信息,请参见第27.5章节。
标签:enable,configure,--,路径,默认,16.4,使用,DIRECTORY,Options 来源: https://blog.csdn.net/ghostliming/article/details/113757033