Ubuntu – How to install latest Graphviz

aptsoftware installation

The default graphviz package is quite out of date. So I tried getting the latest package from: http://www.graphviz.org/Download_linux_ubuntu.php

Trying to install libgraphviz4 it complains about conflict with libcdt4
so I apt-get remove that, then it complains about conflict with libpathplan4
so I apt-get remove that, then it complains about conflict with libxdot4
so I apt-get remove that, then it complains …

Dependency is not satisfiable: libgd2-noxpm (>=2.0.36~rc1~dfsg)|libgd2-xpm (>=2.0.36~rc1~dfsg)

The closest package I could find is libgd2-xpm-dev 2.1.0-2
Installing that doesn't fix the problem.

How do I install this?

The solution to the 'duplicate question' which was tagged to this does not help.
Trying to install the package fails, and even suggests things in a loop.
It is unclear to me why libgd2-xpm-dev 2.1.0-2 doesn't satisfy the dependency anyway.

$ sudo apt-get install libgd2-xpm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libgd2-xpm is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libgd2-xpm:i386

E: Package 'libgd2-xpm' has no installation candidate

$ sudo apt-get install libgd2-xpm:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package libgd2-xpm:i386 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  libgd2-xpm

E: Package 'libgd2-xpm:i386' has no installation candidate

Best Answer

I presume you are trying to install that package using sudo dpkg -i package, well, that normally leads to package dependency problems so normally I suggest the use of gdebi. If you have any problematic package remove it. You can check using sudo apt-get check. Now down to business:

sudo apt-get install gdebi-core

With that we have ready gdebi. Now if you use a 64-bit system you may like to install the 64-bit package, likewise with 32-bits.

Now here comes the funny stuff...

sudo gdebi graphviz_2.37.20140208.0545-1\~saucy_amd64.deb 
Reading package lists... Done
Building dependency tree        
Reading state information... Done
Building data structures... Done 
Building data structures... Done 
This package is uninstallable
Dependency is not satisfiable: libgd2-noxpm (>= 2.0.36~rc1~dfsg)|libgd2-xpm (>= 2.0.36~rc1~dfsg)

And here is where you stop. The reason is that the stable package depends on package that were dropped of Debian, ergo Ubuntu 13.10:

libgd2 (2.0.36~rc1~dfsg-6.1) unstable; urgency=low

  * Non-maintainer upload.
  * Support multi-arch: (closes: #652496)
    - Mark libgd2-xpm, libgd2-noxpm, libgd2-xpm-dev and libgd2-noxpm-dev
      as same.
    - Adjust d-shlibs and dh-buildinfo build-dependency.
  * Drop .la files.

 -- Bastian Blank   Sun, 13 May 2012 09:16:37 +0000

Those are dependencies of graphviz so they should change them to libgd2-xpm-dev and libgd2-noxpm-dev respectively. If that's the case, you should download the latest build instead 2.38 or later, which includes the correct dependencies.