无法安装 php-mbstring

Jon*_*han 8 php 18.04

我正在尝试在已经安装了 apache2、php 和 mariadb 的 Ubuntu 18.04 服务器上安装 php-mbstring。我已尝试使用以下命令序列:

jonathan@samuel:~$ sudo apt update
[sudo] password for jonathan:
Hit:1 http://archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://downloads.mariadb.com/MariaDB/mariadb-10.3/repo/ubuntu bionic InRelease
Get:3 http://archive.ubuntu.com/ubuntu bionic-security InRelease [83.2 kB]
Ign:4 http://downloads.mariadb.com/MaxScale/2.2/ubuntu bionic InRelease
Hit:5 http://downloads.mariadb.com/Tools/ubuntu bionic InRelease
Get:6 http://archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Hit:7 http://downloads.mariadb.com/MaxScale/2.2/ubuntu bionic Release
Fetched 172 kB in 2s (91.6 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
jonathan@samuel:~$ sudo apt install php-mbstring
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 php-mbstring : Depends: php7.2-mbstring but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
jonathan@samuel:~$ sudo apt -f install php7.2-mbstring
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 php7.2-mbstring : Depends: php7.2-common (= 7.2.3-1ubuntu1) but 7.2.7-0ubuntu0.18.04.2 is to be installed
E: Unable to correct problems, you have held broken packages.
Run Code Online (Sandbox Code Playgroud)

似乎涉及到无法解决的依赖关系。我该如何纠正这种情况?这个问题阻止了我安装 phpMyAdmin 的尝试。

小智 12

我必须在我的 sources.list 中启用 Universe

sudo vi /etc/apt/sources.list
Run Code Online (Sandbox Code Playgroud)

将文件更改为如下所示:

deb http://archive.ubuntu.com/ubuntu bionic main universe
deb http://archive.ubuntu.com/ubuntu bionic-security main universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main universe
Run Code Online (Sandbox Code Playgroud)

更新 apt-get

sudo apt update
Run Code Online (Sandbox Code Playgroud)

然后我可以安装 php7.2-mbstring


Jor*_*eee 8

我在 Ubuntu 18.04 中遇到了同样的问题 #Edit the file /etc/apt/sources.list 与下一行:

deb http://archive.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe
Run Code Online (Sandbox Code Playgroud)

#PHP 7.2 -> 保存并运行:

sudo apt update && sudo apt-get upgrade
sudo apt-get install php7.2-mbstring
Run Code Online (Sandbox Code Playgroud)

#PHP 7.3 -> 保存并运行:

sudo apt update && sudo apt-get upgrade
sudo apt-get install php7.3-mbstring
Run Code Online (Sandbox Code Playgroud)

它完成了