Как узнать, какая команда выполняется по символической ссылке? [закрыто]

Учитывая, что у вас установлена ​​libglapi-mesa версии 17, я предполагаю, что вы обновили Mesa из какого-то другого репозитория, отличного от репозитория Mint по умолчанию.Mesa 17 отказалась от поддержки GLES1, но пакеты VLC построены с зависимостью от GLES1, поэтому вы не можете установить пакеты VLC с помощью Mesa.

Однако вы можете создавать свои собственные пакеты VLC без GLES1:

  • Установите основные инструменты сборки и некоторые утилиты, которые мы собираемся использовать:

     sudo apt-get install build-essential devscripts equivs gdebi
     
  • Перейдите в каталог, в котором вы можете записать

     cd
    mkdir vlc-сборка
    cd vlc-сборка
     
  • Загрузите исходный код пакетов VLC

     apt-get исходный код vlc
     

    или, если конфигурация вашего репозитория не позволяет это сделать,

     dget http://security.debian.org/pool/updates/main/v/vlc/vlc_2.2.4-1~deb8u1. доктор наук
     

    (соответствует версии, которая у вас есть в Mint)

  • В извлеченном каталоге (vlc-2.2.4 вероятно) отредактируйте несколько файлов:

     sed -i '/gles1/ d' debian/{control,rules,*.install*}
     
  • Оставаясь в извлеченном каталоге, запустите следующую команду, чтобы обновить журнал изменений и создать новую версию (чтобы ваша частная версия не была заменена существующей версией):

     dch -n "Отменить поддержку GLES 1 (Mesa 17 больше не предоставляет его)».
    dch -r игнорируется
     
  • Установите зависимости сборки (к сожалению, вы не можете использовать apt-get build-dep vlc, потому что вы не можете установить библиотеки GLES 1):

     mk-build-deps
    sudo gdebi vlc-build-deps_*.deb
    mv vlc-build-deps_*.deb ..
     

    (этот последний шаг убирает сгенерированный пакет зависимостей)

  • Соберите пакет:

     dpkg-buildpackage -us -uc
     
  • Теперь вы можете устанавливать любые пакеты, которые вам нужны, вы найдете их в родительском каталоге:

     ls ../*.deb
     

Теперь вам нужно следить за будущими обновлениями VLC (которые иногда случаются, в частности, для устранения проблем с безопасностью) и повторять процесс при необходимости.

0
09.02.2019, 02:51
1 ответ

Чтобы найти неработающие символические ссылки во всех каталогах в вашем PATH, с помощью bash:

IFS=: read -ra dirs <<<"$PATH"
find -L "${dirs[@]}" -type l -maxdepth 1

Добавьте -delete в find, чтобы удалить их.

2
28.01.2020, 02:13

Теги

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