?
本文檔使用 PHP中文網(wǎng)手冊 發(fā)布
在有共享庫的系統(tǒng)里,需要告訴系統(tǒng)如何找到新安裝的共享庫。 那些不需要這么做這個系統(tǒng)包括not necessary include BSD/OS, FreeBSD, HP-UX, IRIX, Linux, NetBSD, OpenBSD, Tru64 UNIX (以前的Digital UNIX,和 Solaris。
設(shè)置共享庫查詢路徑的方法因平臺而異, 但是最廣泛使用的方法是設(shè)置LD_LIBRARY_PATH環(huán)境變量, 比如在Bourne shell(sh, ksh, bash, zsh):
LD_LIBRARY_PATH=/usr/local/pgsql/lib export LD_LIBRARY_PATH
在csh或tcsh中:
setenv LD_LIBRARY_PATH /usr/local/pgsql/lib
把/usr/local/pgsql/lib換成你在step 1 設(shè)置的--libdir。 你應(yīng)該把這些命令放到啟動文件,如/etc/profile或~/.bash_profile里面。 和這個方法相關(guān)的一些注意事項和很好的信息可以在 http://xahlee.org/UnixResource_dir/_/ldpath.html找到。
在有些系統(tǒng)上,更好的方法可能是在編譯之前設(shè)置LD_RUN_PATH環(huán)境變量。
在Cygwin里, 把庫目錄放在PATH下 或者把.dll文件移動到bin目錄下。
如果有疑問,請參考系統(tǒng)的手冊頁(可能是ld.so或者rld)。 如果稍后你看到如下信息:
psql: error in loading shared libraries libpq.so.2.1: cannot open shared object file: No such file or directory
那么這一步就是必須的了。簡單關(guān)注一下。
如果你的系統(tǒng)是BSD/OS, Linux, SunOS 4 并且你還有root權(quán)限,那么你可以在安裝后運行:
/sbin/ldconfig /usr/local/pgsql/lib
(或者相應(yīng)的目錄)以便運行時讓鏈接器更快地找到共享庫。 請參考ldconfig的手冊頁獲取更多信息。 在FreeBSD, NetBSD, OpenBSD上,該命令是:
/sbin/ldconfig -m /usr/local/pgsql/lib
其它系統(tǒng)暫未發(fā)現(xiàn)有什么等效命令。
如果你安裝到/usr/local/pgsql/bin或者程序缺省查詢時搜索不到的地方, 那你應(yīng)該在PATH環(huán)境變量里增加一個/usr/local/pgsql/bin (或者是你在step 1給選項--bindir設(shè)置的值)。 嚴(yán)格說,這些都不是必須的,但這么做可以讓你使用PostgreSQL更方便。
要做這些事情,把下面幾行加到shell啟動文件, 如~/.bash_profile 或/etc/profile(如果你想影響所有用戶)中:
PATH=/usr/local/pgsql/bin:$PATH export PATH
如果你用的是csh 或 tcsh,那么用這條命令:
set path = ( /usr/local/pgsql/bin $path )
為了讓系統(tǒng)找得到man文檔, 你需要加類似下面的一行到一個shell啟動文件里(除非你安裝到了缺省時搜索的位置):
MANPATH=/usr/local/pgsql/man:$MANPATH export MANPATH
環(huán)境變量PGHOST和PGPORT為客戶端應(yīng)用聲明了數(shù)據(jù)庫服務(wù)器的主機和端口, 覆蓋了那些編譯時的缺省項。 如果你想從遠(yuǎn)端運行客戶端應(yīng)用, 那么每個準(zhǔn)備使用該數(shù)據(jù)庫的用戶都設(shè)置PGHOST將會變得非常方便。 但這不是必須的,而且大部分客戶端程序也可以通過命令行選項替換這些設(shè)置。