我一直在尝试在我的 Parrot 5.0 上安装 PHP 8+,但没有任何效果。
我尝试遵循数字海洋说明
我还尝试运行并添加存储库
sudo add-apt-repository ppa:ondrej/php
,但它给了我这个问题中描述的错误
目前网上好像还没有解决办法。有人帮忙吗?
我有同样的问题,但这是我解决的方法:
启用/添加 Sury 存储库:
sudo apt-get update
sudo apt-get -y install lsb-release ca-certificates curl
sudo curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
对下一个命令进行一些调整,使其可以在 Parrot OS 上运行 版本 5 基于 Debian 11 'bullseye',
# change this line
# sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
#to this
sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php bullseye main" > /etc/apt/sources.list.d/php.list'
sudo apt-get update
我使用 aptitude 进行安装,这样我就可以处理 ummet dependency 错误。(在我的情况下,我遇到了 libpcre2-8-0 错误)。
安装能力:
sudo apt install aptitude
安装 php 及其依赖项:
sudo aptitude install php8.2 libapache2-mod-php8.2 php8.2-cli
我从aptitude建议的解决方案中选择了一个合适的选项。
使用 y 选择一个选项,然后使用 n 转到下一个可用选项(如果) 第一个没有解决它(我的第一个选择是 - 不安装 依赖于 libpcre2-8-0)
的软件包
因为OS已经安装了默认的php,所以我运行:
sudo update-alternatives --config php
并从编号选项中选择较新版本的 php 的编号(在我的例子中编号为 3)。
我希望这能解决您的问题。如果您在执行上述步骤时遇到任何问题,请告诉我。
作为参考,请查看 Sury 官方仓库上的自述文件。