web-dev-qa-db-ja.com

「curl:依存:libcurl4(= 7.61.0-1ubuntu2.2)、Ubuntu 18.10にPHP 7.2.10でインストールされません」

Ubuntu 18.10にcURLモジュールをインストールするのに苦労しています。 17.10から18.10へのアップグレード中に、cURLが削除/削除されました。今、コマンドを実行しようとすると

Sudo apt-get install php7.2-curl

私はこのエラーを受け取ります:

The following packages have unmet dependencies:
  php7.2-curl :
  Depends: libcurl4 (>= 7.44.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Sudo apt-get install curl

エラーを与える

The following packages have unmet dependencies:
  curl : Depends: libcurl4 (= 7.61.0-1ubuntu2.2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Content List of my /etc/apt/sources.list.d/

output of apt-cache policy php7.2-curl curl libcurl4

Output of apt update and apt dist-upgrade

Other Software List

2
Mustafa Taheri

問題:非標準のサポートされていない方法をアップグレードしたように見えます... Debian dist-upgradeメソッドを使用したように見えます...(当然のことながら)大きな混乱を引き起こしました。 Ubuntuシステムでは常にdo-release-upgradeを使用します。 Ubuntuは密接にDebianに基づいていますが、UbuntuはnotDebianです。

非標準のアップグレードを準備するときに、間違いを犯しました。

  • 17.10リポジトリを無効にできませんでした。
  • Ubuntu以外のソフトウェアのアンインストールに失敗し、それらのPPAを無効にしませんでした。

これで、(当然のことながら)aptをブロックしている間違ったバージョンのパッケージが混在することになります。通常、これをpartialまたはincompleteアップグレードと呼びます。この情報はすべて、提供された出力からのものです。

解決策:次の2つのオプションがあります。

  1. 混乱をクリーンアップします。

    • すべてのPPAおよびその他のUbuntu以外のソフトウェアをアンインストールし、それらのソースを無効にします。
    • 17.10リポジトリを無効にします。
    • 次に、aptアップデートとdist-upgradeを実行して、ストック18.10にできるだけ近づけます。
    • 次に、1つずつ、Ubuntu以外のソースとソフトウェアの追加を開始します。
  2. #1の実行方法がわからない場合は、データを保存し、18.10のクリーンインストールを実行します。

1
user535733

シンプルなソリューション:(私のために働いた)

Sudo apt remove libcurl4
Sudo apt install curl
2
kaiz3n