7

PHP5のコピーを学校のコンピューターのホームディレクトリにインストールしようとしています。問題は、試してみると、libxml2のコピーが古すぎて機能しないという文句を言うことです。

アップグレードする権限がないので、libxml2をアップグレードせずにこれをインストールする方法はありますか?

助言がありますか?

4

4 に答える 4

9

別の方法として、ホーム ディレクトリに libxml をインストールし、configure をインストールした場所に渡すこともできます。

--with-libxml-dir=<your local install>

libxml をインストールするときは、--prefix=configure でオプションを使用して、システムのインストールを行いたくないことを示すだけです。

cli クライアントをコンパイルした (そして現在のユーザーと apache ユーザーの lib 検索パスが同じである) と仮定すると、正しい lib が次のようにリンクされていることを確認します。

# ldd /usr/bin/php
linux-vdso.so.1 =>  (0x00007ffff71ff000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000030f3c00000)
libedit.so.0 => /usr/lib64/libedit.so.0 (0x00000030e8000000)
libncurses.so.5 => /lib64/libncurses.so.5 (0x00000030f7400000)
libgmp.so.3 => /usr/lib64/libgmp.so.3 (0x00000030e7800000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00000030f7800000)
libz.so.1 => /lib64/libz.so.1 (0x00000030e6c00000)
libpcre.so.0 => /lib64/libpcre.so.0 (0x00000030f9400000)
librt.so.1 => /lib64/librt.so.1 (0x00000030e7000000)
libm.so.6 => /lib64/libm.so.6 (0x00000030e5c00000)
libdl.so.2 => /lib64/libdl.so.2 (0x00000030e6400000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00000030f6800000)
libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00000030f2400000))
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00000030f3000000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00000030eb400000)
libc.so.6 => /lib64/libc.so.6 (0x00000030e6000000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00000030e7c00000)
libfreebl3.so => /lib64/libfreebl3.so (0x00000030f3800000)
libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00000030f7c00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00000030e6800000)
/lib64/ld-linux-x86-64.so.2 (0x00000030e5800000)

libxml は、ライブラリ リストの途中にリストされています。

于 2009-03-04T15:29:56.897 に答える
0

xmltoolsのインストールはどうですか?

于 2010-04-26T00:53:23.050 に答える