c - 在我的主目录中安装 PHP


c - Installing PHP in my home directory

我需要在我的主目录中安装 PHP,而不会污染我家以外的任何目录 [非常重要的要求!]。在系统中已经有一个旧版本的PHP正在运行。

我在这里找到了说明:http://blog.thecybershadow.net/2013/01/25/installing-php-and-apache-module-under-home/

我正在我的主目录中运行这些命令,就像普通用户一样dan

$ ./configure --prefix=/home/dan/php
$ make
$ INSTALL_ROOT=/home/dan/php make install

文章的作者指出,您需要同时使用--prefixINSTALL_ROOT来确保在您的家庭目录之外安装任何东西。

PHP被安装(是的!(,但不幸的是它被安装在这里:

/home/dan/php/php55/home/dan/php/php55/bin

虽然我希望在这里安装它:

/home/dan/php/php55/bin

我该怎么办?我应该只使用一个指令吗?最整洁和传统的方法是什么?

这一切都很简单:

INSTALL_ROOT=/ DESTDIR=/ make install

我认为这是因为这个,但我可能是错的:

您可以使用$PWD/配置 --prefix= 和INSTALL_ROOT可变与制造。这两个选项是相互排斥的。
使用 --prefix 时,您要求在要安装在 make 文件中的文件的每个路径之前添加一个路径。然后使用INSTALL_ROOT变量。

配置创建静态创建规则;所以 make 无法产生一些差异:
它会添加您指定的路径,并再次配置。

为了在您的主目录中安装 php(例如:如果您没有 root 访问权限但需要 php 可执行文件(,请在 php 下载文件夹中运行以下命令:

$ ./configure --prefix=/my/path/
$ make install

正如@Michael Tsang所说,您无需再次指定安装文件夹,因为这将导致安装在安装目标中创建重复的文件夹层次结构。如果您要在远程服务器上工作,或者例如使用作曲家(只需将标志添加到第一个命令的末尾(,我还建议您使用 --with-openssl 编译 php(。

只需使用

make install

因为您已经将其配置为安装在家中。(最好先在非root帐户上试用(