When you install an application package in a
Debian-based system, sometimes prerequisite application packages are
unavailable. These missing packages are known as broken dependencies.
Left unresolved, they can cripple your system’s ability to install new
packages. They’re a disaster that isn’t supposed to happen in Debian,
thanks to the Advanced Packaging Tool (APT) and the scripts contained
in Debian packages. That makes broken dependencies all the more
devastating when they happen. Some users have even been known to
reinstall the whole operating system, despairing of otherwise having a
functioning package management system. However, depending on how the
broken dependencies arose, you have several options to try before you
consider reinstalling.

Package management in Debian-based distributions centers on apt-get,
a utility with a high-level set of functions for package management.
Normally, for Debian users, apt-get interacts with four online
repositories — experimental, unstable, testing, and stable — as listed
in each user’s /etc/apt/sources.list file. (The repositories may differ
for users of some Debian-derived distributions.) CDs and even local
directories can also serve as package sources. Apt-get is supported by
a cluster of related utilities, including apt-cache, apt-config, and

Apt-get calls on dpkg, the command that actually installs and
removes packages. Like apt-get, dpkg is also supported by related
utilities, including dpkg-reconfigure and dpkg-deb.

The two commands have several interfaces, including Aptitude,
Synaptic, KPackage, Gnome-Apt, and dselect. Several of these
interfaces, in particular Aptitude and dselect, include some of the
tools you need for recovering from broken dependencies. However, as
usually happens when an administrative problem arises on GNU/Linux, you
have the widest set of options if you open a terminal while logged in
as the root user and type the commands directly.

read more here