I am not sure what caused this error, but here is what the whole error says, and also this is sitting as a notification, and preventing me from updating any software using Update Manager - Please provide some assistance or tell me how to figure out what to do to fix it.

Could not calculate the upgrade

An unresolvable problem occurred while calculating the upgrade.

Please report this bug against the 'update-manager' package and include the following error message:
'E:Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.'

This post may solve your issue. To summarise,

  1. Open the /var/log/dist-upgrade/apt.log log file in a text editor.
  2. Locate any "broken" packages and remove them with sudo apt-get remove <package>.

Note: in newer versions, the log is located in /var/log/apt/term.log instead.

  • 2
    +1. Worked perfectly. In my case, I just tried to apt-get remove a single pkg, which indicated other pkgs that depend on it to be removed too. Those pkgs were the ones that are distro-specific and their upgrade path was unknown to Ubuntu. – IsaacS Dec 18 '12 at 22:46
  • 13
    cat: /var/log/dist-upgrade/apt.log: No such file or directory – Braden Best Oct 24 '14 at 3:39
  • I tried this. I found "this likely means your installation is broken" text, but do not know what package that refers to.... – ScottF Aug 12 '16 at 1:32
  • @ScottFlog in the /term.log and try to identify what it was trying to install. – Pykler Aug 12 '16 at 14:28


sudo apt-get update && sudo apt-get upgrade

Then run the update-manager again.


This error can be caused by an incomplete package installation.

You have two options, 1) fix the broken installation, or 2) roll back (or remove) the broken installation.

Since it was not mentioned above, to roll back and remove the broken installation, exit synaptic (if you are still in it) and then enter these commands into a terminal:

sudo apt-get update       # Make sure your package list is up to date
sudo apt-get autoremove   # Removes "no longer required" packages

Then to confirm that the broken packages are gone, go back into synaptic and select, Edit | Fix broken packages and there should be no broken packages.

Note this does not fix the broken installation, it simply allows you to proceed again in synaptic with some other installation or removal, etc.

What happened was that you started a package installation and then part way through it, and after some dependencies had been installed, something went wrong, leaving unused dependent packages, and an incomplete install.


The problem was I had some packages installed that had no upgrade path, that is, are not available in Precise. To debug this I looked in the /var/log/dist-upgrade/apt.log file, and it identifies the packages that were “broken”. I just had to apt-get remove them, do the release upgrade, and afterwards I could reinstall them.

Sometimes when you go to upgrade your machine with apt-get you will see that a package is being "kept back".

Normally to upgrade a machine you would run:

sudo apt-get update
sudo apt-get upgrade

To fix packages have been kept back:

sudo apt-get dist-upgrade

   // dist-upgrade in addition to performing the function of upgrade,
   // also intelligently handles changing dependencies with new versions
   // of packages; apt-get has a "smart" conflict resolution system, and
   // it will attempt to upgrade the most important packages at the
   // expense of less important ones if necessary. So, dist-upgrade
   // command may remove some packages. The /etc/apt/sources.list file
   // contains a list of locations from which to retrieve desired package
   // files. See also apt_preferences(5) for a mechanism for overriding
   // the general settings for individual packages.

This will upgrade the packages that have newer versions available, and install any new dependencies which are required to do that.

  • 3
    Answer without any explanation == No answer – heemayl Jan 24 '17 at 5:24
  • 2
    @MAKRipon Although this is an answer and not a comment, I agree with heemayl that it would benefit from some explanation. I recommend you edit this answer to explain what those commands do and why you believe they will help other users. – Eliah Kagan Jan 24 '17 at 12:17
  • 1
    Why would you forcibly remove everything related to mysql when there is nothing in the question or error regarding that? I pity those who blindly copy and paste commands without a full understanding of what they do. Do you suppose that you could explain what you are doing on each line of this code block (for an example see this answer on this very page. Do you not think it important to warn people that the dist-upgrade may remove packages? – Elder Geek Jan 24 '17 at 21:46

protected by Braiam Feb 15 '14 at 4:31

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.