web-dev-qa-db-ja.com

Ubuntu 18.04のアップグレード後、php7.2-curlをインストールできません

do-release-upgrade -dを使用して、今日16.04から18.04にアップグレードしました

アップグレード中に、次のようないくつかのパッケージが削除されることが通知されました。

削除:libperl5.22 lxc-common Perl-modules-5.22 php-imagick
php7.1-curl php7.2-curl python3-certbot-nginx

Imagickとcertbotを問題なく再インストールできましたが、php7.2-curlをインストールしようとすると次のメッセージが表示されます。

# apt install php7.2-curl -y
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-curl : Depends: php7.2-common (= 7.2.3-1ubuntu1) but 7.2.4-1+ubuntu16.04.1+deb.sury.org+1 is to be installed
E: Unable to correct problems, you have held broken packages.

どうすれば状況を修正できますか?

24
Arni J

これはあなたを救うことができます:

Sudo add-apt-repository ppa:ondrej/php
Sudo apt update
Sudo apt install php7.2-fpm php7.2-Gd php7.2-curl php7.2-mysql php7.2-dev php7.2-cli php7.2-common php7.2-mbstring php7.2-intl php7.2-Zip php7.2-bcmath

次にSudo service Apache2 restart

52
Anson Wong

新しいレポを追加する必要はありません。これを行うと、7.2バージョンがインストールされます。後でphpとApacheを再起動することを忘れないでください。また、次の後に新しいmodを有効にすることを確認します(ただし、これは既に実行済みです)。

Sudo apt install php-curl
Sudo a2enmod php7.2

また、php-curlphp-curlおよびphp7.2-curlをインストールする)のインストールの最後に、次のように見えることに気付くでしょう(FPMのセットアップがあることに注意してください。 FPMを使用しないでください):

NOTICE: Not enabling PHP 7.2 FPM by default.
NOTICE: To enable PHP 7.2 FPM in Apache2 do:
NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php7.2-fpm
NOTICE: You are seeing this message because you have Apache2 package installed.

だからそれが言うことをする:

Sudo a2enmod proxy_fcgi setenvif
Sudo a2enconf php7.2-fpm
Sudo systemctl restart Apache2.service
1
J-a-n-u-s

Libcurl4のインストールは私のために働いていました

apt install libcurl4

次にphp7.2-curlをインストールし、Apache2を問題なく再起動しました。

0
MickC