Graphviz (short for Graph Visualization Software) is a package of open-source tools initiated by AT&T Labs Research for drawing graphs specified in DOT language scripts having the file name extension 'gv'. It also provides libraries for software applications to use the tools. Graphviz is free software licensed under the Eclipse Public License. The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the Mac operating system. To that end we provide the command-line driven MacPorts software package under a 3-Clause BSD License, and through it easy. Installation of pygraphviz in MacOS 10.12 (Sierra) First attempt to the installation failed because of missing graphviz: Ok, so next obvious step was to install missing library using brew: MBP: jhartman$ brew install libcgraph Updating Homebrew. Auto-updated Homebrew!
Command+Space
and type Terminal and press enter/return key.ruby -e '$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)' < /dev/null 2> /dev/null
brew install midnight-commander
Done! You can now use midnight-commander
.
Here are some questions I often get asked about my Graphviz builds.
Stable versions of Graphviz (even-numbered versions) get installed under /usr/local
in a directory named for the version of Graphviz that's being installed. For example, Graphviz 2.12 gets installed into /usr/local/graphviz-2.12
, so you can run dot by running /usr/local/graphviz-2.12/bin/dot
.
If you don't like the version number in the path, you can make a symlink. If you don't like having to type the path at all, you can update your PATH environment variable.
Development versions (odd-numbered versions) since 2.13.20070307 get installed in /usr/local/graphviz-devel
.
My Graphviz packages do not include a GUI, so there's nothing to install in the Applications folder. (See above for where things do get installed.)
If you want a GUI for Graphviz, there is one that's provided by Pixelglow. It uses its own built-in version of Graphviz, which is several years out-of-date. However, you can patch it so that it makes use of a newer Graphviz from one of my packages. To do this, download and install one of my Graphviz packages, then download Graphviz from Pixelglow. Drag Pixelglow's Graphviz.app to /Applications, and then open the Terminal and run this (using graphviz-devel
instead of graphviz-2.12
depending on which of my packages you installed):
cd /usr/local/graphviz-2.12/bin
./fix-graphviz-app '/Applications/Graphviz.app'
This will permanently modify your copy of Graphviz.app to use my updated version of Graphviz. You can freely move or rename your Graphviz.app, but note that it will not function if you later uninstall my Graphviz package, or if you copy this Graphviz.app to a machine on which my Graphviz package is not installed.
If you encounter any problems with a Graphviz.app patched in this way, you should probably contact me, and not Glen at Pixelglow; we shouldn't bother him about patched versions of his software that he's never seen before.
You may want to create a symlink at /usr/local/graphviz
pointing at the most recent stable version of Graphviz you installed, so that you can run dot more simply as /usr/local/graphviz/bin/dot
. To create this symlink, do this (substituting whatever version of Graphviz you're actually installing where I put 2.12):
cd /usr/local
sudo ln -s graphviz-2.12 graphviz
You must be an administrator of your computer to do this, and you will be prompted for your password.
dot
?That's easy to arrange by modifying your PATH environment variable. Instructions on how to do that vary depending on what shell you use. Open the Terminal and type echo $SHELL
and follow the correct set of instructions depending on the result. For stable Graphviz versions, you'll need to have made a symlink as described earlier. For development versions, substitute /usr/local/graphviz-devel
for /usr/local/graphviz
below.
/bin/bash
If the file .bash_profile
exists in your home directory, edit that file. If there is no .bash_profile
but there is a .profile
, edit that instead. If neither exist, create .bash_profile
and edit it. Add this line to the end of the file:
export PATH=/usr/local/graphviz/bin:$PATH
Close the terminal window and make a new one, and dot should now be in your path.
/bin/tcsh
If you have a file .tcshrc
in your home directory, edit that. If instead you have a .cshrc
, edit that. If neither exists, create .tcshrc
and edit it. Now add this line to the end of the file:
setenv PATH /usr/local/graphviz/bin:$PATH
After you close the terminal window and make a new one, dot should be in your path.
When you try to run dot
or one of the other Graphviz programs for the first time, you might get an error like this:
Warning: dlopen(/usr/local/graphviz-devel/lib/graphviz/libgvplugin_pango.3.dylib, 9): Library not loaded: /usr/X11R6/lib/libXrender.1.dylib
Referenced from: /usr/local/graphviz-devel/lib/graphviz/libgvplugin_pango.3.dylib
Reason: image not found
Trace/BPT trap
If so, it just means you haven't installed X11 yet. Go to your Mac OS X installation media and install X11User.pkg.
When running a Graphviz program like dot or neato from a script running inside your web server, you may get this message:
No fonts found; this probably means that the fontconfig library is not correctly configured. You may need to edit the fonts.conf configuration file. More information about fontconfig can be found in the fontconfig(3) manual page and on http://fontconfig.org
I can confirm that this problem occurs in Graphviz 2.12, but it doesn't happen for me anymore in Graphviz 2.13.20070301.0540. I don't know exactly when it got fixed, but if you still see the problem in 2.13.20070301.0540 or later, please let me know.
Depending on where Graphviz got installed (see above) you can uninstall it simply by removing that directory. For example:
sudo rm -rf /usr/local/graphviz-2.12
You'll need to be an administrator of your computer to do this, and it will ask you for your password.
If you made a symlink as described above, you can delete that too:
sudo rm -f /usr/local/graphviz
Like all installed packages, Graphviz leaves an installation receipt in /Library/Receipts
, with a name like Graphviz 2.12 PowerPC.pkg
. You can remove that too if you like, by navigating to /Library/Receipts
in the Finder and dragging the receipt to the Trash.
I am attempting to make a universal binary distribution which would run on either Intel or PowerPC processors, but I have run into a few problems that I have thus far been unable to resolve. I am seeking assistance from the Graphviz developers. If you have an Intel Mac and would like to help me by testing my universal builds, let me know.