【问题标题】:Installing PHP in my home directory在我的主目录中安装 PHP
【发布时间】:2013-10-15 08:46:46
【问题描述】:

我需要在我的主目录中安装 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

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

【问题讨论】:

    标签: php c linux configure


    【解决方案1】:

    这一切都很简单:

    INSTALL_ROOT=/ DESTDIR=/ make install
    

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

    您同时使用 $PWD/configure --prefix= 和 INSTALL_ROOT 变量与make。这两个选项是互斥的。
    当您使用 --prefix 时,您要求在 make 文件中要安装的每个文件路径之前添加一个路径。然后你使用 INSTALL_ROOT 变量。

    配置创建静态make规则;所以 make 无法有所作为:
    它会再次添加您使用 configure 指定的路径。

    【讨论】:

      【解决方案2】:

      随便用

      make install
      

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

      【讨论】:

        【解决方案3】:

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

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

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

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-02-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-02-08
          • 1970-01-01
          相关资源
          最近更新 更多