Не удается установить libudev-dev на xUbuntu 20.04

Этот вопрос основан на Не удается установить libudev-dev на Ubuntu 16.04, однако обновлен для 20.04.

Не могу найти решение для установки пакета libudev-dev. Он выдает эту ошибку

Следующие пакеты имеют неудовлетворенные зависимости. libudev-dev : Зависит: libudev1 (= 245.4-4ubuntu3.4), но необходимо установить 245.4-4ubuntu3.5. E: Невозможно исправить проблемы, у вас установлены битые пакеты.

Поэтому я попробовал sudo apt-get install libudev1

libudev1 уже самой новой версии (245.4-4ubuntu3.5).

Хорошо... Поэтому я попытался понизить версию libudev1

apt install libudev1=245.4-4ubuntu3.4

Список пакетов для удаления был слишком длинным для комфорта. Он состоял из 35 строк.

Я уже посмотрел Can't install libudev-dev on Ubuntu 16.04, однако, это не очевидно, и это для 2 LTS более старых версий, чем сейчас.

Может кто-нибудь помочь мне с этим?

0
задан 4 May 2021 в 20:42

1 ответ

Этот ответ стал возможен благодаря ответу Videonauth


Я предполагаю, что в управляющем файле этого архива есть простая путаница, вам следует сообщить об этом как об ошибке.

Однако на самом деле обходной путь - это очень грязный хак. Будьте осторожны, это может привести к поломке!

Откройте терминал. Я рекомендую делать это в dir внутри shm для чистоты и скорости:

mkdir /dev/shm/fixingudev
cd /dev/shm/fixingudev

Скачайте ближайший пакет libudev-dev_245.4 из здесь. Убедитесь, что это самая близкая версия для вашего случая, чтобы избежать несовместимости! Разница после тире не должна быть большой, но если подверсия отличается, остановитесь и переосмыслите это.

wget "" -O "libudev-dev_before.deb"
// E.g. wget "https://mirrors.edge.kernel.org/ubuntu/pool/main/s/systemd/libudev-dev_245.4-4ubuntu3.6_amd64.deb" -O "libudev-dev_before.deb"

Там распакуйте архив .deb с:

dpkg-deb -R libudev-dev_before.deb tmp

Затем измените одну строчку в файле tmp/DEBIAN/control:

sed -i 's/245.4-4ubuntu3.6/245.4-4ubuntu3.5/' tmp/DEBIAN/control

После этого перепакуйте . deb файл с

dpkg-deb -b tmp libudev-dev_after.deb

Теперь вы можете установить его, убедившись, что все зависимости уже установлены с:

dpkg -i libudev-dev_after.deb

Warning: Это исправление может работать, но оно также может сломать вещи, если есть изменения, которые не были должным образом учтены сопровождающими. Поэтому поймите, что вы делаете этот хак на свой страх и риск.

0
ответ дан 7 May 2021 в 17:40

Другие вопросы по тегам:

Похожие вопросы: