Рейтинг:1

Как установить musikcube в 20.04 без проблем с зависимостью от libavcodec-extra58?

флаг in

я пытаюсь установить музыкальный куб на фокусном. Он жалуется на невозможность установить libavcodec-extra, который, в свою очередь, жалуется на libavcodec-extra58.

Когда я пытаюсь вручную установить libavcodec-extra58, я получаю большой список того, что нужно удалить, что не может быть правильным:

Следующие пакеты были установлены автоматически и больше не требуются:
  glib-networking:i386 gstreamer1.0-plugins-base:i386 gstreamer1.0-plugins-good:i386 gstreamer1.0-x:i386 libaa1:i386 libaom0:i386 libasn1-8-heimdal:i386 libavahi-client3:i386
  libavahi-common-data:i386 libavahi-common3:i386 libavc1394-0:i386 libavutil56:i386 libbrotli1:i386 libcaca0:i386 libcairo-gobject2:i386 libcairo2:i386 libcap2:i386
  libcapi20-3:i386 libcdparanoia0:i386 libcodec2-0.9:i386 libcups2:i386 libcurl3-gnutls:i386 libdatrie1:i386 libdv4:i386 libexif12:i386 libfontconfig1:i386 libfreetype6:i386
  libfribidi0:i386 libgd3:i386 libgdbm-compat4:i386 libgdbm6:i386 libgdk-pixbuf2.0-0:i386 libglib2.0-0:i386 libglu1-mesa:i386 libgmp10:i386 libgnutls30:i386 libgomp1:i386
  libgphoto2-6:i386 libgphoto2-port12:i386 libgraphite2-3:i386 libgsm1:i386 libgssapi-krb5-2:i386 libgssapi3-heimdal:i386 libgstreamer-plugins-base1.0-0:i386
  libgstreamer-plugins-good1.0-0:i386 libgstreamer1.0-0:i386 libgudev-1.0-0:i386 libharfbuzz0b:i386 libhcrypto4-heimdal:i386 libheimbase1-heimdal:i386
  libheimntlm0-heimdal:i386 libhogweed5:i386 libhx509-5-heimdal:i386 libicu66:i386 libiec61883-0:i386 libieee1284-3:i386 libjbig0:i386 libjpeg-turbo8:i386 libjpeg8:i386
  libk5crypto3:i386 libkeyutils1:i386 libkrb5-26-heimdal:i386 libkrb5-3:i386 libkrb5support0:i386 liblcms2-2:i386 libldap-2.4-2:i386 libltdl7:i386 libmp3lame0:i386
  libmpg123-0:i386 libmysqlclient21:i386 libnettle7:i386 libnghttp2-14:i386 libnuma1:i386 libodbc1:i386 libopenal1:i386 libopenjp2-7:i386 libopus0:i386 liborc-0.4-0:i386
  libosmesa6:i386 libp11-kit0:i386 libpango-1.0-0:i386 libpangocairo-1.0-0:i386 libpangoft2-1.0-0:i386 libpcap0.8:i386 libpci3:i386 libperl5.30:i386 libpixman-1-0:i386
  libpng16-16:i386 libproxy1v5:i386 libpsl5:i386 libraw1394-11:i386 libroken18-heimdal:i386 librsvg2-2:i386 librsvg2-common:i386 librtmp1:i386 libsane:i386 libsasl2-2:i386
  libsasl2-modules:i386 libsasl2-modules-db:i386 libsdl2-2.0-0:i386 libshine3:i386 libshout3:i386 libslang2:i386 libsnappy1v5:i386 libsndio7.0:i386 libsnmp35:i386
  libsoup2.4-1:i386 libsoxr0:i386 libspeex1:i386 libsqlite3-0:i386 libssh-4:i386 libssl1.1:i386 libstb0:i386 libswresample3:i386 libtag1v5:i386 libtag1v5-ваниль:i386
  libtasn1-6:i386 libthai0:i386 libtheora0:i386 libtiff5:i386 libtwolame0:i386 libusb-1.0-0:i386 libv4l-0:i386 libv4lconvert0:i386 libva-drm2:i386 libva-x11-2:i386
  libvdpau1:i386 libvisual-0.4-0:i386 libvkd3d1:i386 libvpx6:i386 libwavpack1:i386 libwayland-cursor0:i386 libwayland-egl1:i386 libwebp6:i386 libwebpmux3:i386
  libwind0-heimdal:i386 libx264-155:i386 libx265-179:i386 libxcb-render0:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxi6:i386 libxkbcommon0:i386
  libxml2:i386 libxpm4:i386 libxrandr2:i386 libxrender1:i386 libxslt1.1:i386 libxv1:i386 libxvidcore4:i386 libzvbi0:i386 mesa-vdpau-драйверы:i386 ocl-icd-libopencl1:i386
  vdpau-драйвер-все: i386
Используйте «sudo apt autoremove», чтобы удалить их.
Будут установлены следующие дополнительные пакеты:
  libvo-amrwbenc0
Следующие пакеты будут УДАЛЕНЫ
  libavcodec58 libavcodec58:i386 libfaudio0:i386 libwine:i386 wine32:i386
Следующие НОВЫЕ пакеты будут установлены
  libavcodec-extra58
0 для обновления, 2 для новой установки, 5 для удаления и 25 для отказа от обновления.

Обратите внимание, что если я запускаю автоматическое удаление обычно удалять нечего - большой список автоматически удаляемых пакетов является прямым результатом выполнения этой команды. Что еще более удивительно в этом выводе, так это то, что он хочет Удалить libavcodec58, несмотря на то, что libavcodec-extra58 явно предоставляет libavcodec58.

apt показать libavcodec-extra58 дает:

Пакет: libavcodec-extra58
Версия: 7:4.2.4-1ubuntu0.1
Приоритет: необязательно
Раздел: вселенная/libs
Источник: ffmpeg
Происхождение: Убунту
Сопровождающий: Разработчики Ubuntu <[email protected]>
Первоначальный сопровождающий: Специалисты по обслуживанию мультимедиа Debian <[email protected]>
Ошибки: https://bugs.launchpad.net/ubuntu/+filebug
Установленный размер: 14,6 МБ
Предоставляет: libavcodec58 (= 7:4.2.4-1ubuntu0.1)
Зависит: libaom0 (>= 1.0.0), libaribb24-0 (>= 1.0.3), libavutil56 (= 7:4.2.4-1ubuntu0.1), libc6 (>= 2.29), libcairo2 (>= 1.2.4) ), libcodec2-0.9, libglib2.0-0 (>= 2.12.0), libgsm1 (>= 1.0.18), liblzma5 (>= 5.1.1alpha+20120614), libmp3lame0 (>= 3.100), libopencore-amrnb0 ( >= 0.1.5), libopencore-amrwb0 (>= 0.1.5), libopenjp2-7 (>= 2.0.0), libopus0 (>= 1.1), librsvg2-2 (>= 2.14.4), libshine3 (> = 3.1.0), libsnappy1v5 (>= 1.1.8), libspeex1 (>= 1.2~beta3-1), libswresample3 (= 7:4.2.4-1ubuntu0.1), libtheora0 (>= 1.0), libtwolame0 (> = 0.3.10), libva2 (>= 2.2.0), libvo-amrwbenc0 (>= 0.1.3), libvorbis0a (>= 1.1.2), libvorbisenc2 (>= 1.1.2), libvpx6 (>= 1.6. 0), libwavpack1 (>= 4.40.0), libwebp6 (>= 0.5.1), libwebpmux3 (>= 0.6.1-2), libx264-155, libx265-179 (>= 3.2), libxvidcore4 (>= 1.2 .2), libzvbi0 (>= 0.2.35), zlib1g (>= 1:1.2.0)
Конфликты: libavcodec58
Домашняя страница: https://ffmpeg.org/
Размер загрузки: 4880 КБ
Источники APT: http://gb.archive.ubuntu.com/ubuntu focus-updates/universe Пакеты amd64
Описание: Библиотека FFmpeg с дополнительными декодировщиками для аудио/видео кодеков.
 FFmpeg — ведущий мультимедийный фреймворк, способный декодировать, кодировать, транскодировать,
 мультиплексирование, демультиплексирование, потоковая передача, фильтрация и воспроизведение почти всего, что люди и
 машины создали. Он поддерживает самые малоизвестные древние форматы вплоть до
 передовой.
 .
 Эта библиотека предоставляет общую структуру кодирования/декодирования и
 содержит несколько декодеров и кодировщиков для потоков аудио, видео и субтитров,
 и несколько фильтров битового потока.
 .
 Общая архитектура предоставляет различные услуги, начиная от ввода/вывода битового потока
 оптимизации DSP и делает его пригодным для реализации надежных и быстрых
 кодеков, а также для экспериментов.
 .
 Этот пакет заменяет пакет libavcodec58 и содержит
 следующие дополнительные кодеки:
 .
  * ARIB STD-B24 Captions (декодер субтитров)
  * OpenCORE Adaptive Multi-Rate (AMR) узкополосный (кодировщик/декодер)
  * OpenCORE Adaptive Multi-Rate (AMR) широкополосный (декодер)
  * Android VisualOn Adaptive Multi-Rate (AMR) широкополосный (кодировщик)
 .
 Поскольку этот пакет ссылается на библиотеки, лицензированные по
 Лицензия Apache 2.0, полученные двоичные файлы распространяются под лицензией
 GPL версии 3 или выше.

Что-то здесь сломано. Вопрос в том, какие сломан? И это на моей стороне (и, следовательно, поправимо), или это вина сопровождающих пакетов?

Рейтинг:1
флаг zw

Все это происходит из-за зависимостей. Разработчик Musikcube является третьей стороной, которая может не уважать/не знать дерево зависимостей пакетов рабочего стола Ubuntu.

Поэтому, чтобы избежать удаления Wine, вы должны использовать Snap-пакет версии 0.96.3 который устанавливается так же просто, как

мгновенно установить MusikCube

или скомпилировать из исходников с помощью другой ответ.

Примечание. Версия Snap не будет обновляться из-за решение разработчика.

jumbot avatar
флаг in
Я не говорил, что использую `dpkg -i`. На самом деле, я использовал «apt install» именно так, как вы указали в своем ответе.
jumbot avatar
флаг in
как показано ниже, re: `apt autoremove` - если я запускаю autoremove в обычном режиме, он говорит мне, что ничего не нужно удалять. Большой список является прямым следствием попытки установить `libavcode-extra58`.
N0rbert avatar
флаг zw
Все это происходит из-за зависимостей. Вы администратор этой системы, а не я.
jumbot avatar
флаг in
Хорошо, спасибо @N0rbert. В таком случае, можете ли вы предложить способы устранения неполадок с зависимостями?
N0rbert avatar
флаг zw
Они будут автоматически удовлетворены, я не вижу никаких проблем. Только что проверил на свежей ВМ.
jumbot avatar
флаг in
Я не думаю, что вы понимаете мою проблему здесь - есть пакеты, которые будут удалены, если я выполню команду. Конечно, `musikbox` будет работать, но `wine` может перестать работать, и другие вещи могут сломаться, если `faudio` исчезнет. Я понимаю, что это версии i386, поэтому, возможно, они на самом деле не нужны в моей системе 86_64x, но у меня нет возможности узнать, нужны ли они, пока я не удалю их и все не сломается.
N0rbert avatar
флаг zw
О, я поняла, наконец. Тогда пакет Snap станет решением. Это будет способ спасти Вайн.
Someone avatar
флаг my
@N0rbert N0rbert Как насчет компиляции из исходников?
N0rbert avatar
флаг zw
Понятно, хорошая идея @Someone.
Рейтинг:1
флаг my

Если у вас возникли проблемы при установке из подходящий, пытаться компиляция вручную.

  1. Установите зависимости:

    sudo apt-get install build-essential git clang cmake libboost-thread1.67-dev libboost-system1.67-dev libboost-filesystem1.67-dev libboost-дата-время1.67-dev libboost-atomic1.67-dev libboost- chrono1.67-dev libogg-dev libvorbis-dev libavutil-dev libavformat-dev libswresample-dev libncursesw5-dev libasound2-dev libpulse-dev pulseaudio libmicrohttpd-dev libmp3lame-dev libcurl4-openssl-dev libev-dev libssl-dev libtag1-dev libopenmpt-dev
    
  2. Клонируем репозиторий:

    cd $ГЛАВНАЯ/Загрузки
    клон git https://github.com/clangen/musikcube.git -b 0.96.10 --рекурсивный
    
  3. Соберите пакет:

    компакт-диск
    cmake -G "Файлы Makefile для Unix" . && make -j$(nproc) && sudo make install
    музыкальный куб
    
  4. Запустите принудительную установку:

    sudo apt -f установить
    

Удаление возможно:

cd $HOME/Загрузки/musikcube && sudo make uninstall

Вы всегда можете обновить его, используя:

cd $HOME/Загрузки/musikcube 
сделать чистым 
git тянуть 
делать 
судо сделать установить

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.