Fix dependency when apt-get -f install fails

28,770

This is because you are mixing different repositories packages! You must remove the raring-security repositories before trying something else:

sudo sed -i 's/raring/d' /etc/apt/sources.list /etc/apt/sources.list.d/*.list
sudo apt-get update
sudo mv /usr/share/lintian/overrides/libc6 /var/backup/usr/share/lintian/overrides/libc6
sudo apt-get install libc6=2.15-0ubuntu10.5 libc6-dev=2.15-0ubuntu10.5

This should solve the issue.

Share:
28,770

Related videos on Youtube

schlingel
Author by

schlingel

Updated on September 18, 2022

Comments

  • schlingel
    schlingel over 1 year

    I'm trying to get cgminer 3.5 on my Ubuntu 12.04 to work but it fails because libudev.so.1 is missing. I tried to install libc6 and now I have unmet dependencies. Even when I try to run sudo apt-get -f install I get this error:

    sudo apt-get -f install
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Correcting dependencies... failed.
    The following packages have unmet dependencies:
     libc6-dev : Depends: libc6 (= 2.17-0ubuntu5.1) but 2.15-0ubuntu10.5 is installed
                 Depends: libc-dev-bin (= 2.17-0ubuntu5.1)
     libudev1 : Depends: libc6 (>= 2.17) but 2.15-0ubuntu10.5 is installed
    E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
    E: Unable to correct dependencies
    

    I already tried to add the raring security repo (eb http://security.ubuntu.com/ubuntu raring-security main) in my sources.list file, run apt-get update etc. but it still want'S to reinstall the 2.15 version which causes errors.

    \Edit:

     apt-cache policy libc6-dev libc6 libc-dev-bin libudev1
    libc6-dev:
      Installed: 2.17-0ubuntu5.1
      Candidate: 2.17-0ubuntu5.1
      Version table:
     *** 2.17-0ubuntu5.1 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main amd64 Packages
            100 /var/lib/dpkg/status
         2.15-0ubuntu10.5 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
            500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
         2.15-0ubuntu10 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
    libc6:
      Installed: 2.15-0ubuntu10.5
      Candidate: 2.17-0ubuntu5.1
      Version table:
         2.17-0ubuntu5.1 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main amd64 Packages
     *** 2.15-0ubuntu10.5 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
            500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
            100 /var/lib/dpkg/status
         2.15-0ubuntu10 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
    libc-dev-bin:
      Installed: 2.15-0ubuntu10.5
      Candidate: 2.17-0ubuntu5.1
      Version table:
         2.17-0ubuntu5.1 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main amd64 Packages
     *** 2.15-0ubuntu10.5 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
            500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
            100 /var/lib/dpkg/status
         2.15-0ubuntu10 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
    libudev1:
      Installed: 198-0ubuntu11
      Candidate: 198-0ubuntu11.2
      Version table:
         198-0ubuntu11.2 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main amd64 Packages
     *** 198-0ubuntu11 0
            100 /var/lib/dpkg/status
    

    And the output of apt-get check:

     apt-get check
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these.
    The following packages have unmet dependencies:
     libc6-dev : Depends: libc6 (= 2.17-0ubuntu5.1) but 2.15-0ubuntu10.5 is installed
                 Depends: libc-dev-bin (= 2.17-0ubuntu5.1)
     libudev1 : Depends: libc6 (>= 2.17) but 2.15-0ubuntu10.5 is installed
    E: Unmet dependencies. Try using -f.
    

    apt-get -u dist-upgrade has the same problem. Any idea how I can resolve that?

    /Edit 2

    apt-get -f install libc6-dev=2.17-0ubuntu5.1 libc6=2.17-0ubuntu5.1 libc-dev-bin=2.17-0ubuntu5.1 libudev1=198-0ubuntu11.2Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    libc6 is already the newest version.
    libc6-dev is already the newest version.
    libc6-dev set to manually installed.
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     libc6 : Breaks: libc6:i386 (!= 2.17-0ubuntu5.1) but 2.15-0ubuntu10.5 is to be installed
     libc6:i386 : Breaks: libc6 (!= 2.15-0ubuntu10.5) but 2.17-0ubuntu5.1 is to be installed
     libnih1 : PreDepends: libc6 (< 2.16) but 2.17-0ubuntu5.1 is to be installed
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    \Edit 3

    apt-cache policy libnih1 libc6 libc6:i386libnih1:
      Installed: 1.0.3-4ubuntu9.1
      Candidate: 1.0.3-4ubuntu9.1
      Version table:
     *** 1.0.3-4ubuntu9.1 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
            100 /var/lib/dpkg/status
         1.0.3-4ubuntu9 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
    libc6:
      Installed: 2.17-0ubuntu5.1
      Candidate: 2.17-0ubuntu5.1
      Version table:
     *** 2.17-0ubuntu5.1 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main amd64 Packages
            100 /var/lib/dpkg/status
         2.15-0ubuntu10.5 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages
            500 http://security.ubuntu.com/ubuntu/ precise-security/main amd64 Packages
         2.15-0ubuntu10 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
    libc6:i386:
      Installed: 2.15-0ubuntu10.5
      Candidate: 2.17-0ubuntu5.1
      Version table:
         2.17-0ubuntu5.1 0
            500 http://security.ubuntu.com/ubuntu/ raring-security/main i386 Packages
     *** 2.15-0ubuntu10.5 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages
            500 http://security.ubuntu.com/ubuntu/ precise-security/main i386 Packages
            100 /var/lib/dpkg/status
         2.15-0ubuntu10 0
            500 http://us.archive.ubuntu.com/ubuntu/ precise/main i386 Packages
    

    Edit 4

    apt-get remove libnih1
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     libc-dev-bin : Depends: libc6 (< 2.16) but 2.17-0ubuntu5.1 is to be installed
     libc6 : Breaks: libc6:i386 (!= 2.17-0ubuntu5.1) but 2.15-0ubuntu10.5 is to be installed
     libc6:i386 : Breaks: libc6 (!= 2.15-0ubuntu10.5) but 2.17-0ubuntu5.1 is to be installed
     libc6-dev : Depends: libc-dev-bin (= 2.17-0ubuntu5.1)
     libnih-dbus1 : Depends: libnih1 (= 1.0.3-4ubuntu9.1) but it is not going to be installed
     mountall : Depends: libnih1 (>= 1.0.0) but it is not going to be installed
     upstart : Depends: libnih1 (>= 1.0.0) but it is not going to be installed
     ureadahead : Depends: libnih1 (>= 1.0.0) but it is not going to be installed
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    Edit 5

    Output of lsb_release:

    No LSB modules are available.
    Distributor ID: Ubuntu
    Description:    Ubuntu 12.04.3 LTS
    Release:    12.04
    Codename:   precise
    

    Output of apt-get install libc6=2.15-0ubuntu10.5 after removing raring repos and updating:

    apt-get install libc6=2.15-0ubuntu10.5
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     libc6-dev : Depends: libc6 (= 2.17-0ubuntu5.1) but 2.15-0ubuntu10.5 is to be installed
                 Depends: libc-dev-bin (= 2.17-0ubuntu5.1)
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    Edit 6

    sudo apt-get install libc6-dev=2.15-0ubuntu10.5 libc6=2.15-0ubuntu10.5
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    The following packages were automatically installed and are no longer required:
      gir1.2-ubuntuoneui-3.0 libubuntuoneui-3.0-1 thunderbird-globalmenu
    Use 'apt-get autoremove' to remove them.
    Suggested packages:
      glibc-doc
    The following packages will be DOWNGRADED:
      libc6 libc6-dev
    0 upgraded, 0 newly installed, 2 downgraded, 0 to remove and 18 not upgraded.
    3 not fully installed or removed.
    Need to get 7,596 kB of archives.
    After this operation, 486 kB disk space will be freed.
    Do you want to continue [Y/n]? Y
    Get:1 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main libc6-dev amd64 2.15-0ubuntu10.5 [2,941 kB]
    Get:2 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main libc6 amd64 2.15-0ubuntu10.5 [4,654 kB]
    Fetched 7,596 kB in 6s (1,095 kB/s)                                            
    Preconfiguring packages ...
    dpkg: warning: downgrading libc6 from 2.17-0ubuntu5.1 to 2.15-0ubuntu10.5.
    (Reading database ... 240709 files and directories currently installed.)
    Preparing to replace libc6 2.17-0ubuntu5.1 (using .../libc6_2.15-0ubuntu10.5_amd64.deb) ...
    Unpacking replacement libc6 ...
    dpkg: error processing /var/cache/apt/archives/libc6_2.15-0ubuntu10.5_amd64.deb (--unpack):
     './usr/share/lintian/overrides/libc6' is different from the same file on the system
    dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
    Errors were encountered while processing:
     /var/cache/apt/archives/libc6_2.15-0ubuntu10.5_amd64.deb
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    
    • Braiam
      Braiam over 10 years
      Please add the output of apt-cache policy libc6-dev libc6 libc-dev-bin libudev1 and `sudo apt-get check.
    • schlingel
      schlingel over 10 years
      @Braiam Please see the updated post.
    • schlingel
      schlingel over 10 years
      @AvinashRaj Yes, but it failed soon in the process so I asked this question and provided the output of the failed command.
    • Braiam
      Braiam over 10 years
      Could you add apt-cache policy libnih1 libc6 libc6:i386?
    • schlingel
      schlingel over 10 years
      @Braiam Please see Edit 3. I'm confused, it seems that now are both versions are installed!?
    • Braiam
      Braiam over 10 years
      What is the output of lsb_release -a?
    • Braiam
      Braiam about 10 years
      I think you had to reinstall if you removed libc6, right?
    • web.learner
      web.learner about 10 years
      I am going to close this for now, as it appears you have re-installed. Can you just confirm this?
    • Glutanimate
      Glutanimate almost 7 years
      FWIW, I was able to fix a similar issue by manually downloading the corresponding package, extracting it, and replacing the files dpkg complained about with the ones in the package I was planning on installing. Eventually I was able to downgrade the package using dpkg.
  • schlingel
    schlingel over 10 years
    apt-get seems to be broken due to the error above. I can't install or upgrade any application. Seems like I have broken my system... Any idea?
  • schlingel
    schlingel over 10 years
    Yes, same output. The error seems to prevent the thing from working. I'm now trying to reset everything. Hopefully it works and after that I'm going to use an older version of cgminer... if it works.
  • schlingel
    schlingel over 10 years
    Please see Edit 2.
  • schlingel
    schlingel over 10 years
    See Edit 4. Is all hope lost? :-/
  • schlingel
    schlingel over 10 years
    Didn't work. Please see updated post.
  • schlingel
    schlingel over 10 years
    I think you were on the right track. I added the corresponding libc6-dev version to the command and tried to downgrade everything. It actually did try to downgrade but it seems that it fails because the downgrade process tries to replace the old i386 version with the amd 64 version. (Please see edit 6) Is there some switch to replace only the 64 version or ignore this error?
  • Braiam
    Braiam over 10 years
    try again. I added a command, btw, clean comments.
  • schlingel
    schlingel over 10 years
    I ended up removing a lot of files. But with every obstacle removed another one popped up, I have to reinstall the thing :-/ But thank you for your support, I learned something about apt-get.