설치된 패키지의 구현되지 않은 종속성을 무시하도록 만드는 방법은 무엇입니까?

설치된 패키지의 구현되지 않은 종속성을 무시하도록 만드는 방법은 무엇입니까?

.deb어떤 이유로 Opera 12.16을 설치했습니다. 특정 브라우저의 특정 버전이 필요하고 다른 옵션이 없다고 가정해 보겠습니다.

그러나 이 deb는 더 이상 내 배포판에 포함되지 않는 패키지(예: gstreamer0.10 시리즈)에 의존합니다(Debian 테스트됨). 이것은 적절한 실패를 만든다모든apt remove opera종속성 오류를 제외한 조치 :

# apt install cli-common
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 opera : Depends: gstreamer0.10-plugins-good but it is not installable
         Recommends: flashplugin-nonfree but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

apt --fix-broken installOpera 제거만 제안합니다.

# apt --fix-broken install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  opera
0 upgraded, 0 newly installed, 1 to remove and 92 not upgraded.
1 not fully installed or removed.
After this operation, 46.6 MB disk space will be freed.
Do you want to continue? [Y/n]

현재 내 해결 방법은 필요할 때 Opera를 설치하고 apt로 다른 작업을 수행해야 할 때 즉시 제거하는 것입니다. 이것은 매우 성가신 일입니다.

어떤 제안이 있으십니까? 이상적으로는 오페라의 의존성을 결코 무시하지 않는 경향이 있습니다. 왜냐하면 그것만으로도 제 목적에 충분하기 때문입니다.

답변1

종속성을 무시할 수는 없지만 누락된 종속성을 충족하기 위해 apt가짜 패키지를 만들 수 있습니다 gstreamer0.10-plugins-good. 가장 간단한 방법은equivs:

  1. 설치하다equivs

    sudo apt install equivs
    
  2. 템플릿 제어 파일 생성

    equivs-control gstreamer0.10-plugins-good.control
    
  3. 패키지 이름 수정

    sed -i 's/<package name; defaults to equivs-dummy>/gstreamer0.10-plugins-good/g' gstreamer0.10-plugins-good.control
    
  4. 패키지 빌드

    equivs-build gstreamer0.10-plugins-good.control
    
  5. 설치하다

    sudo dpkg -i gstreamer0.10-plugins-good_1.0_all.deb
    

이는 opera패키지의 종속성을 충족해야 합니다.

답변2

편집을 통해 패키지 gstreamer0.10-plugins-good의 종속성을 제거할 수도 있습니다.opera/var/lib/dpkg/status

텍스트 편집기로 열고 해당 줄을 검색한 Package: opera다음 해당 줄 아래에서 Depends:문제가 있는 패키지를 삭제하세요 gstreamer0.10-plugins-good.

그 후에 apt다시 일했습니다 .

관련 정보