From the manuals:
The command why finds a dependency chain that installs the package named on the command line, as above. Note that the dependency that aptitude produced in this case is only a suggestion. This is because no package currently installed on this computer depends on or recommends the kdepim package; if a stronger dependency were available, aptitude would have displayed it.
In contrast, why-not finds a dependency chain leading to a conflict with the target package:
In my case(Ubuntu 14.04.2 LTS \n \l), I'm trying to install libdbus-1-3:i386
$ sudo apt-get install libdbus-1-3:i386
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libdbus-1-3:i386 : Depends: libc6:i386 (>= 2.10) but it is not going to be installed
unity-control-center : Depends: libcheese-gtk23 (>= 3.4.0) but it is not going to be installed
Depends: libcheese7 (>= 3.0.1) but it is not going to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
I tried aptitude why and aptitude why-not, hoping to get more information about why the installation failed.
$ sudo aptitude why libdbus-1-3:i386
p upstart:i386 Provides upstart
p upstart:i386 Depends libdbus-1-3:i386 (>= 1.2.16)
$ sudo aptitude why-not libdbus-1-3:i386
Unable to find a reason to remove libdbus-1-3:i386.
$ sudo aptitude why libc6:i386
p sqlite3:i386 Provides sqlite3
p sqlite3:i386 Depends libc6:i386 (>= 2.4)
$ sudo aptitude why-not libc6:i386
p sqlite3:i386 Provides sqlite3
p sqlite3:i386 Depends libc6:i386 (>= 2.4)
p libc6:i386 Conflicts libc6-xen:i386
p libc6:i386 Provides libc6-xen:i386
But I can not understand the meaning of the output. Can someone please help me?