curl не работает на Ubuntu 18.04 LTS

39

Я не могу получить контент из Интернета, используя curl . Я попытался это описать ниже.

Некоторые пакеты не могут быть установлены. Это может означать, что вы запросили невозможную ситуацию, или если вы используете нестабильный дистрибутив, что некоторые необходимые пакеты еще не созданы или не были удалены из Incoming. Следующая информация может помочь разрешить ситуацию:

Следующие пакеты имеют неудовлетворенные зависимости. curl: Зависит от: libcurl4 (= 7.58.0-2ubuntu3), но он не будет установлен E: Невозможно исправить проблемы, у вас есть поврежденные пакеты.

Я проверил наличие задержанных пакетов с обоими sudo apt-mark showheldи dpkg -l | grep ^hв надежде получить список задержанных пакетов, но в любом случае я не получил результатов.

Кроме того, когда я пытаюсь установить libcurl4его, он почти сломает мою систему, поскольку попытается удалить эти пакеты ниже.

libcurl3 mongodb-enterprise mongodb-enterprise-сервер mongodb-enterprise-tools msodbcsql msodbcsql17 mssql-tools php7.1-curl r-base r-base-core r-base-dev r-base-html r-cran-boot r-cran -класс r-кран-codetools r-кран-иностранный r-кран-getopt r-кран-kernsmooth r-кран-решетка r-cran-littler r-кран-масса r-кран-матрица r-кран-mgcv r-кран -nlme r-cran-nnet r-cran-rpart r-cran-пространственный r-кран-выживание r-рекомендованный slack-desktop virtualbox-5.2

редактировать

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution. deb http://gb.archive.ubuntu.com/ubuntu/ bionic main restricted deb-src
http://gb.archive.ubuntu.com/ubuntu/ bionic main restricted

## Major bug fix updates produced after the final release of the
## distribution. deb http://gb.archive.ubuntu.com/ubuntu/ bionic-updates main restricted deb-src
http://gb.archive.ubuntu.com/ubuntu/ bionic-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team. deb http://gb.archive.ubuntu.com/ubuntu/ bionic universe deb-src
http://gb.archive.ubuntu.com/ubuntu/ bionic universe

deb http://gb.archive.ubuntu.com/ubuntu/ bionic-updates universe
deb-src http://gb.archive.ubuntu.com/ubuntu/ bionic-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu 
## team, and may not be under a free licence. Please satisfy yourself as to 
## your rights to use the software. Also, please note that software in 
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team. deb http://gb.archive.ubuntu.com/ubuntu/ bionic multiverse deb-src http://gb.archive.ubuntu.com/ubuntu/ bionic
multiverse

deb http://gb.archive.ubuntu.com/ubuntu/ bionic-updates multiverse
deb-src http://gb.archive.ubuntu.com/ubuntu/ bionic-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
# deb-src http://gb.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users. deb http://archive.canonical.com/ubuntu bionic partner deb-src
http://archive.canonical.com/ubuntu bionic partner

deb http://security.ubuntu.com/ubuntu bionic-security main restricted
deb-src http://security.ubuntu.com/ubuntu bionic-security main
restricted

deb http://security.ubuntu.com/ubuntu bionic-security universe deb-src
http://security.ubuntu.com/ubuntu bionic-security universe

deb http://security.ubuntu.com/ubuntu bionic-security multiverse
deb-src http://security.ubuntu.com/ubuntu bionic-security multiverse

deb http://gb.archive.ubuntu.com/ubuntu/ bionic-proposed main
multiverse universe restricted #Not for humans during development
stage of release bionic
# ded-src http://archive.ubuntu.com/ubuntu/ trusty-backports main restricted ui=niverse

deb http://gb.archive.ubuntu.com/ubuntu/ bionic-backports main
restricted multiverse universe
Joseph-LS
источник
Сначала выполните, sudo apt-get updateа затем выполните эту команду: dpkg -l | grep ^..rи добавьте вывод к вашему вопросу
Хи Джин,
Обновление работает хорошо, но по-прежнему не выводится дляdpkg -l | grep ^..r
Joseph-LS
Попробуйте sudo apt-get -s -o Debug::pkgProblemResolver=yes install libcurl4 добавить вывод к своему вопросу
Хи Джин
Также, пожалуйста, отредактируйте свой вопрос, чтобы включить выводcat /etc/apt/sources.list
Хи Джин
sudo apt-get -s -o Debug::pkgProblemResolver=yes install libcurl4работает без сбоев и указывает на это libcurl4 is already the newest version(7.58.0-2ubuntu3). Это потому, что я сделал некоторые изменения в системе. Я обнаружил, что это действительно конкретные пакеты, которые требуют более ранней версии libcurl e.g. 3. Ubuntu 18.04 LTS автоматически устанавливается php7.2вместе с libcurl4. Но с установленной libcurl3 я не могу установить curl. Итак, я закончил резервное копирование некоторых данных, отпустил то, что на самом деле не имело значения, а затем переустановил пакеты libcurl4 & curl.
Джозеф-LS

Ответы:

30

Эта проблема часто встречается в нескольких пакетах в последних версиях Ubuntu LTS. Предустановленные пакеты имеют возможную ошибку в соглашении о версии, потому что «18.04» и другие строки, ссылающиеся на репо, рассматриваются как часть версии пакета, а не как ссылка на репо.
Обходной путь - удалить предустановленную зависимость, а затем переустановить. После этого вы можете установить cURL.

apt remove -y libcurl4
apt install -y libcurl4 curl

Другие пакеты с этой проблемой - okular и libsdl2, и решение такое же, отслеживание проблемных зависимостей, удаление и переустановка.

Также вы можете использовать apt механизм понижения (таким образом, нет необходимости удалять пакеты, которые зависят от libcurl4).

apt install -y libcurl4=7.58.0-2ubuntu3
apt install -y curl
cosmoscalibur
источник
1

Установите локон из источника . Это сработало для меня.

git clone https://github.com/curl/curl.git
cd curl
./buildconf
./configure
make
make test # optional
sudo make install
Панагиотис Кранидиотис
источник
0

Попробуй использовать

sudo apt install libcurl4-openssl-dev

Если необходимо

sudo update
sudo apt remove libcurl4
Hearen
источник