VLC не может быть установлен через apt из-за проблем с "libgles1", как это исправить? [дубликат]

Из /var/log/dist-upgrade/apt.log :

Starting pkgProblemResolver with broken count: 1
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) libgles1-mesa [ amd64 ] < 12.0.6-0ubuntu0.16.04.1 > ( libs )
Broken libgles1-mesa:amd64 Depends on libglapi-mesa [ amd64 ] < 12.0.6-0ubuntu0.16.04.1 -> 17.0.7-0ubuntu0.16.04.1 > ( libs ) (= 12.0.6-0ubuntu0.16   .04.1)
    Considering libglapi-mesa:amd64 64 as a solution to libgles1-mesa:amd64 2
    Removing libgles1-mesa:amd64 rather than change libglapi-mesa:amd64
Investigating (0) vlc [ amd64 ] < 2.2.2+git20170721+r59033+56~ubuntu16.04.1 > ( video )
Broken vlc:amd64 Depends on libgles1-mesa [ amd64 ] < 12.0.6-0ubuntu0.16.04.1 > ( libs ) (>= 7.8.1)
    Considering libgles1-mesa:amd64 2 as a solution to vlc:amd64 1
Broken vlc:amd64 Depends on libgles1 [ amd64 ] < none ->  > ( none )
    Considering libgles1-mesa:amd64 2 as a solution to vlc:amd64 1
    Or group remove for vlc:amd64
Done

При поиске в Интернете я обнаружил, что libgles1 устарел .

Команда VLC обновила свои зависимости с версии 2.2.2-5ubuntu0.16.04.2, но моя система явно не догнала это (я проверил, запустив apt-cache зависимо vlc , и он показывает зависимость от libgles1-mesa).

Так случилось, что пару месяцев назад я добавил PPA видеолана для запуска (чтобы получить последний VLC с наименьшими ошибками).

Это дало мне версию VLC 2.2.7 и исправило ошибку VLC, и это то, что у меня есть сегодня в моей системе. Я знаю, потому что vlc --version мне так говорит.

apt-cache policy vlc говорит:

Installed: 2.2.2+git20170721+r59033+56~ubuntu16.04.1
Candidate: 2.2.2+git20170721+r59033+56~ubuntu16.04.1
Version table:
*** 2.2.2+git20170721+r59033+56~ubuntu16.04.1 500
    500 http://ppa.launchpad.net/videolan/stable-daily/ubuntu xenial/main amd64 Packages
    100 /var/lib/dpkg/status
 2.2.2-5ubuntu0.16.04.3 500
    500 http://gb.archive.ubuntu.com/ubuntu xenial-updates/universe amd64 Packages
    500 http://security.ubuntu.com/ubuntu xenial-security/universe amd64 Packages
 2.2.2-5 500
    500 http://gb.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages

(Кажется странным, что apt-cache policy говорит, что 2.2.2 + git20170721 + r59033 + 56 ~ ubuntu16.04.1 установлен; I прочтите это как vlc версии 2.2.2, которая конфликтует с 2.2.7, которую дает vlc --version .)

По-видимому, у меня установлена ​​64-разрядная версия Ubuntu 16.04.2 LTS (из сведений о системе в панели управления GUI).

Я полагаю, что мог бы отключить PPA панели запуска, но в этом случае я бы, вероятно, вернулся к более старому двоичному файлу vlc, который приводил к сбою моей системы.

Итак, мой вопрос (по крайней мере, я думаю, что это правильный вопрос):
Как мне убедить apt в том, что libgles1-mesa устарела или отсутствует?

1
задан 6 October 2017 в 08:04

2 ответа

Решением было подделать новую версию libgles1 с помощью dpkg-deb. Это безопасно, так как этот пакет избыточен в моей системе.

sudo ppa-purge -o  videolan -p stable-daily -d xenial

Теперь более новый vlc (2.2.7) ушел, а стандартный (аварийный) vlc вернулся:

$ vlc --version
VLC media player 2.2.2 Weatherwax (revision 2.2.2-0-g6259d80)

Выполнить sudo apt remove libgles1-mesa , так что Software Updater больше не перегружается.

Software Updater теперь устанавливает libgles2 v17.0.7 плюс различные другие связанные библиотеки.

sudo add-apt-repository ppa:videolan/stable-daily
sudo apt update

Теперь apt list --upgradeable показывает

libvlc5/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]
libvlccore8/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]
vlc/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]
vlc-data/xenial,xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 all [upgradable from: 2.2.2-5ubuntu0.16.04.3]
vlc-nox/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]
vlc-plugin-notify/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]
vlc-plugin-samba/xenial 2.2.2+git20170721+r59033+56~ubuntu16.04.1 amd64 [upgradable from: 2.2.2-5ubuntu0.16.04.3]

] Запустите Software Updater. Он устанавливает 5 из 7 debs:

Start-Date: 2017-07-28  12:22:38
Commandline: aptdaemon role='role-commit-packages' sender=':1.208'
Upgrade: vlc-plugin-samba:amd64 (2.2.2-5ubuntu0.16.04.3, 2.2.2+git20170721+r59033+56~ubuntu16.04.1), vlc-plugin-notify:amd64    (2.2.2-5ubuntu0.16.04.3, 2.2.2+git20170721+r59033+56~ubuntu16.04.1), libvlc5:amd64 (2.2.2-5ubuntu0.16.04.3, 2.2.2+git201707   21+r59033+56~ubuntu16.04.1), libvlccore8:amd64 (2.2.2-5ubuntu0.16.04.3, 2.2.2+git20170721+r59033+56~ubuntu16.04.1), vlc-data   :amd64 (2.2.2-5ubuntu0.16.04.3, 2.2.2+git20170721+r59033+56~ubuntu16.04.1)
End-Date: 2017-07-28  12:22:42

Теперь запустите

sudo apt download libgles1-mesa
sudo dpkg-deb -x ~/libgles1-mesa_12.0.6-0ubuntu0.16.04.1_amd64.deb .
sudo dpkg-deb --control ~/libgles1-mesa_12.0.6-0ubuntu0.16.04.1_amd64.deb .

Измените строку DEBIAN / control Depends, чтобы она читалась так:

Depends: libglapi-mesa (= 17.0.7-0ubuntu0.16.04.1), libc6 (>= 2.2.5)

(поскольку libglapi был обновлен до 17.0.7)

sudo dpkg-deb -b . ~/libgles1-mesa_17.0.7-0ubuntu0.16.04.1_amd64.deb
sudo dpkg -i libgles1-mesa_17.0.7-0ubuntu0.16.04.1_amd64.deb
sudo apt install vlc-nox
sudo apt install vlc

Теперь vlc --version выводит

VLC media player 2.2.7 Umbrella (revision 2.2.2+git20170721+r59033+56~ubuntu16.04.1)

Software Updater работает нормально. Ну, я никогда!

5
ответ дан 5 January 2021 в 22:26

У меня возникла эта проблема при обновлении до 16.04.2. Ночные сборки, похоже, с этим не согласны. Итак, мне пришлось вернуться к тому, что было доступно в репозитории Universe.

sudo ppa-purge ppa:videolan/master-daily
sudo apt-get update
sudo apt-get autoremove
sudo apt-get install vlc

Это исправило. Synaptic сообщает, что nightly-build сломалась, если я повторно добавлю ppa: videolan / master-daily.

0
ответ дан 5 January 2021 в 22:26

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

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