我正在尝试在流浪机器上安装SSHed时安装作曲家。每当我运行php composer.phar安装时,我都会收到以下错误:
vagrant@precise64:/vagrant$ php composer.phar install
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Installation request for doctrine/migrations dev-master -> satisfiable by doctrine/migrations[dev-master].
- doctrine/migrations dev-master requires php ^5.5|^7.0 -> your PHP version (5.4.45) does not satisfy that requirement.
我不知道如何处理第一个"教义安装请求......"问题,当我检查运行 php -v 时,我安装了 php 5.5.27。我也尝试过sudo php composer.phar安装。有什么见解吗?
你的盒子,precise64(Ubuntu 12.04)可能有一个过时的PHP版本。
有几种方法可以升级 PHP。为了简单和模块化,我们将只专注于升级 PHP。
通过 SSH 进入框:
vagrant ssh
默认情况下,您需要的 PHP 版本在精确存储库 IIRC 中不可用。添加具有更新版本的 PPA:
sudo apt-get update
sudo apt-get install -y python-software-properties
sudo add-apt-repository -y ppa:ondrej/php5
sudo apt-get update
删除现有的 PHP:
sudo apt-get purge php5
检查安装候选,它应该至少是 5.5(截至这篇文章对我来说5.5.33+
):
sudo apt-cache policy php5
安装 php5 的更新版本:
sudo apt-get install php5
现在composer
应该对你来说很好。
您的机器上似乎安装了几个 PHP。使用以下命令检查 PATH 环境中的第一个 php。
which php