How to Fix ‘Broken Count > 0’ APT Error in Ubuntu

Attempting to install software or run updates on Ubuntu only for the terminal to abort with the cryptic declaration: “E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages” or diagnostic logs displaying broken count > 0 brings package management to an immediate standstill. In the Debian and Ubuntu Advanced Package Tool (APT) architecture, pkgProblemResolver is the dependency reconciliation engine responsible for calculating complex upgrade paths. When third-party repositories introduce package versions that conflict with core distribution libraries, held packages prevent required dependency upgrades, or half-installed packages leave the dpkg database inconsistent, APT refuses to make changes to avoid breaking essential system libraries. This guide provides step-by-step methods to resolve package breaks and restore clean APT operation in Ubuntu.

Primary Factors Behind APT ‘Broken Count > 0’ Errors

The problem resolver fails when mathematical dependency equations cannot be satisfied cleanly. Common causes include:

  • Unmet Shared Library Dependencies: Installing a package from an unofficial PPA that requires a newer or older version of a core library (like libssl or libc6) than your Ubuntu release supports.
  • Held Packages (Apt-Mark Hold): System administrators or automated scripts marking specific packages as “held”, preventing APT from upgrading them when newer dependencies require it.
  • Interrupted Package Configurations: Power cuts or terminal disconnects during a previous dpkg installation leaving packages in a half-configured state.
  • Conflicting Multi-Arch Libraries: Incompatibilities between 32-bit (i386) and 64-bit (amd64) runtime libraries on the same system.

Method 1: Run APT’s Automated Dependency Fixer

APT includes a built-in repair switch designed to download missing dependencies and prune broken configurations.

  1. Open your terminal by pressing Ctrl + Alt + T.
  2. Execute the fix-broken command with root privileges:
    sudo apt --fix-broken install
  3. Review the proposed solution carefully. If APT offers to install missing libraries or safely remove broken packages, type Y and press Enter.
  4. Once complete, reconfigure any partially installed packages:
    sudo dpkg --configure -a

Method 2: Check for and Release Held Packages

Packages explicitly pinned to a specific version frequently cause resolver deadlocks during system updates.

  1. List all currently held packages on your system:
    apt-mark showhold
  2. If any packages are returned in the output, release the hold lock by running:
    sudo apt-mark unhold <package-name>
    (Replace <package-name> with the specific package listed in the previous step).
  3. Run a system update to allow dependencies to resolve:
    sudo apt update && sudo apt upgrade -y

Method 3: Remove Conflicting Third-Party PPAs via ppa-purge

If the conflict originates from an unofficial PPA, using ppa-purge downgrades installed packages back to official Ubuntu versions.

  1. Install the ppa-purge utility:
    sudo apt install ppa-purge
  2. Purge the conflicting repository (replace with your specific PPA name):
    sudo ppa-purge ppa:problematic/ppa
  3. The utility will automatically remove third-party packages, reinstall standard Ubuntu repository versions, and resolve broken resolver counts.

Method 4: Manually Remove Half-Installed Broken Packages

If a specific package persistently blocks the package manager, forcibly removing its configuration restores APT stability.

  1. Identify the exact broken package from the terminal error message.
  2. Forcibly remove the offending package without checking dependencies:
    sudo dpkg --remove --force-remove-reinstreq <package-name>
  3. Update your package lists and clean cache:
    sudo apt clean && sudo apt update

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.