VLC 플레이어를 설치하려고 할 때마다 다음 오류가 발생합니다.
hutber@hutber:~$ sudo apt-get install vlc
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies.
vlc : Depends: vlc-nox (= 2.2.4-1~deb8u1) but it is not going to be installed
Depends: libgles1-mesa (>= 7.8.1) but it is not going to be installed or
libgles1
Depends: libvncclient0 (>= 0.9.9) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
그런 다음 종속성을 수동으로 설치하려고했습니다.
libgles1-mesa:
Depends: libglapi-mesa (=12.0.6-0ubuntu0.16.04.1) but 17.1.0~git20170509+17.1.da13cc7e-0ubuntu0ricotz~16.04.1 is to be installed
VLC를 설치할 수 없는 이유는 무엇입니까?
[편집하다]
hutber@hutber:~/vlc-build$ sed -i '/gles1/d' debian/{control,rules,*.install*}
hutber@hutber:~/vlc-build$ dch -n "Drop GLES 1 support (Mesa 17 no longer provides it)."
hutber@hutber:~/vlc-build$ dch -r ignored
hutber@hutber:~/vlc-build$ mk-build-deps
dh_testdir
dh_testroot
dh_prep
dh_testdir
dh_testroot
dh_install
dh_install: Compatibility levels before 9 are deprecated (level 7 in use)
dh_installdocs
dh_installdocs: Compatibility levels before 9 are deprecated (level 7 in use)
dh_installchangelogs
dh_compress
dh_fixperms
dh_installdeb
dh_installdeb: Compatibility levels before 9 are deprecated (level 7 in use)
dh_gencontrol
dh_md5sums
dh_builddeb
dpkg-deb: building package 'vlc-build-deps' in '../vlc-build-deps_2.2.4-1~deb8u1.2_amd64.deb'.
The package has been created.
Attention, the package has been created in the current directory,
not in ".." as indicated by the message above!
hutber@hutber:~/vlc-build$ sudo gdebi vlc-build-deps_*.deb
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading state information... Done
build-dependencies for vlc
Dependency package to build the 'vlc' package
Do you want to install the software package? [y/N]:y
(Reading database ... 320548 files and directories currently installed.)
Preparing to unpack vlc-build-deps_2.2.4-1~deb8u1.2_amd64.deb ...
Unpacking vlc-build-deps (2.2.4-1~deb8u1.2) over (2.2.4-1~deb8u1.1) ...
Setting up vlc-build-deps (2.2.4-1~deb8u1.2) ...
hutber@hutber:~/vlc-build$ mv vlc-build-deps_*.deb ..
hutber@hutber:~/vlc-build$ dpkg-buildpackage -us -uc
dpkg-buildpackage: source package vlc
dpkg-buildpackage: source version 2.2.4-1~deb8u1.2
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by Jamie Hutber <hutber@hutber>
dpkg-buildpackage: host architecture amd64
dpkg-source --before-build vlc-build
fakeroot debian/rules clean
dh clean --parallel --with autoreconf
dh_testdir
debian/rules override_dh_auto_clean
make[1]: Entering directory '/home/hutber/vlc-build'
rm -f debian/vlc.install debian/vlc-nox.install
dh_auto_clean
make[1]: Leaving directory '/home/hutber/vlc-build'
dh_autoreconf_clean
dh_clean
dpkg-source -b vlc-build
dpkg-source: error: can't build with source format '3.0 (quilt)': no upstream tarball found at ../vlc_2.2.4.orig.tar.{bz2,gz,lzma,xz}
dpkg-buildpackage: error: dpkg-source -b vlc-build gave error exit status 255
답변1
버전 17이 설치되어 있다는 점을 고려하면 libglapi-mesa
Mint 기본값이 아닌 다른 저장소에서 Mesa를 업데이트한 것 같습니다. Mesa 17에서는 GLES1 지원이 중단되었지만 VLC 패키지는 GLES1에 대한 종속성을 바탕으로 구축되었으므로 Mesa를 사용하여 VLC 패키지를 설치할 수 없습니다.
그러나 GLES1 없이 자체 VLC 패키지를 구축할 수 있습니다.
사용할 기본 빌드 도구와 일부 유틸리티를 설치합니다.
sudo apt-get install build-essential devscripts equivs gdebi
쓰기 가능한 디렉토리를 입력하세요
cd mkdir vlc-build cd vlc-build
VLC 패키지의 소스 코드 다운로드
apt-get source vlc
또는 저장소 구성이 작동을 허용하지 않는 경우,
dget http://security.debian.org/pool/updates/main/v/vlc/vlc_2.2.4-1~deb8u1.dsc
(민트 버전과 일치)
추출된 디렉터리(
vlc-2.2.4
가능한 경우)에서 일부 파일을 편집합니다.sed -i '/gles1/d' debian/{control,rules,*.install*}
추출된 디렉터리에서 다음 명령을 실행하여 변경 로그를 업데이트하고 새 버전을 생성합니다(비공개 버전이 기존 버전으로 대체되지 않도록).
dch -n "Drop GLES 1 support (Mesa 17 no longer provides it)." dch -r ignored
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에 대한 향후 업데이트를 주의 깊게 살펴보고(특히 보안 문제를 해결하기 위해 가끔 발생함) 필요한 경우 프로세스를 반복해야 합니다.