Удалите пакеты libav после переустановки из исходного кода

Я использую kubuntu 14.04 и не планирую обновляться, по крайней мере, до летних каникул. Предоставленные пакеты libav несколько устарели (две основные версии позади) и дают неудовлетворительный вывод для некоторых из моих вариантов использования. По этой причине я попытался собрать и установить из исходного кода, что оказалось, чтобы решить проблемы, которые у меня были. Я хочу, чтобы все было так (у меня достаточно опыта работы с git, и у меня не должно быть проблем с обновлением моего снимка и обновлением deps), и теперь я хочу удалить несколько пакетов libav, которые у меня есть, чтобы сделать немного убрать и предотвратить странные конфликты.

Когда я пытаюсь это сделать, apt-get хочет удалить целую кучу других (мета) -пакетов, потому что они полагаются на libav (vlc, dolphin, kubuntu-desktop (!) И т. Д.).

Как я могу перепривязать все эти приложения к новым исполняемым файлам libav, которые я создал (я полагаю, это должно быть достаточно прямым, если установить их глобально с помощью sudo make install), и как я могу затем безопасно удалить устаревшие пакеты, не ломая мои setup?

Редактировать: следуя совету @MoonSweep, я попытался создать пакет эквивалентов, но у меня возникли проблемы с его выполнением: вот результат, если я пытаюсь удалить пакеты libav без пакета эквивалентов для полного заполнения deps:

$sudo apt-get remove libavcodec-* libavformat* libavutil*
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'libavcodec-dev' for regex 'libavcodec-*'
[...more regex gibberish...]
The following packages were automatically installed and are no longer required:
libechonest2.1 libftgl2 libglew1.10 libprojectm2 libprotobuf8 libqxt-core0
libqxt-gui0 projectm-data
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
baloo clementine dolphin gstreamer1.0-libav gstreamer1.0-plugins-bad
kubuntu-desktop libavcodec-dev libavcodec-extra libavcodec-extra-54
libavformat-dev libavformat54 libavutil-dev libavutil52 libbaloowidgets4
libchromaprint-dev libchromaprint0 libk3b6-extracodecs libkfilemetadata4
libopencv-contrib2.4 libopencv-highgui2.4 libopencv-legacy2.4
libopencv-objdetect2.4 libswscale-dev libswscale2
nepomuk-core-ffmpegextractor phonon-backend-vlc vlc vlc-nox
vlc-plugin-notify vlc-plugin-samba
0 upgraded, 0 newly installed, 30 to remove and 0 not upgraded.
After this operation, 64.2 MB disk space will be freed.
Do you want to continue? [Y/n]

Вот пакет эквивалентов, который я установил

### Commented entries have reasonable defaults.
### Uncomment to edit them.
# Source: <source package name; defaults to package name>
Section: misc
Priority: optional
# Homepage: <enter URL here; no default>
Standards-Version: 3.9.2

Package: libav-source
# Version: <enter version here; defaults to 1.0>
# Maintainer: Your Name <yourname@example.com>
# Pre-Depends: <comma-separated list of packages>
# Depends: <comma-separated list of packages>
# Recommends: <comma-separated list of packages>
# Suggests: <comma-separated list of packages>
Provides: libavcodec-extra,libavcodec-extra-54,libavformat,libavformat54,libavutil52,libswscale2,libswscale2,gstreamer1.0-libav,libavcodec-dev,libavformat-dev,libavutil-dev,libswscale-dev
# Replaces: <comma-separated list of packages>
# Architecture: all
# Copyright: <copyright file; defaults to GPL2>
# Changelog: <changelog file; defaults to a generic changelog>
# Readme: <README.Debian file; defaults to a generic one>
# Extra-Files: <comma-separated list of additional files for the doc directory>
# Files: <pair of space-separated paths; First is file to include, second is destination>
#  <more pairs, if there's more than one file to include. Notice the starting space>
Description: <short description; defaults to some wise words>
 long description and info
 .
 second paragraph

Но, похоже, этого недостаточно, поскольку предыдущая команда удаления имеет точно такой же результат. Что я делаю не так?

0
задан 27 March 2015 в 13:05

1 ответ

Вы не должны "снова переплетать" те приложения; если Ваши библиотеки правильно установлены (даже в /usr/local), приложения должны быть в состоянии найти их.

то, В чем Вы нуждаетесь, должно создать и установить поддельный пакет, который симулирует обеспечивать те библиотеки для удовлетворения зависимостей с точки зрения диспетчера пакетов. Смотрите на equivs пакет.

0
ответ дан 27 March 2015 в 13:05

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

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