This is an archive of the discontinued LLVM Phabricator instance.

[Doc] Update how to install graphviz on macOS
AbandonedPublic

Authored by chenwj on May 17 2017, 8:13 AM.

Details

Reviewers
silvas
grosser
Summary

The link [1] mentioned on the document is no longer maintained. Installing graphviz through MacPorts works, and I think it's easier for most people who want to view Dag on macOS.

[1] http://www.pixelglow.com/graphviz/

Diff Detail

Event Timeline

chenwj created this revision.May 17 2017, 8:13 AM

@grosser I add you as reviewer because you once responded my mail [1].

[1] http://lists.llvm.org/pipermail/llvm-dev/2017-March/111289.html

It looks, at least to me, like graphviz.org has mac downloads and is official.
Is there a reason not to use that?

chenwj added a comment.EditedMay 21 2017, 5:16 AM

It looks, at least to me, like graphviz.org has mac downloads and is official.
Is there a reason not to use that?

@dberlin That one doesn't work for me (I use OS X El Capitan). My overall impression from the web page [1], is those packages are no longer well-maintained,
and it encourages us to use HomeBrew or MacPorts to install graphviz. Just want to provide an easy and work solution to view Dag on MacOS.

[1] http://www.graphviz.org/Download_macos.php

davide added a subscriber: davide.May 22 2017, 7:16 AM
davide added inline comments.
docs/ProgrammersManual.rst
1291–1295

Why not just removing the link and let people google install graphviz macos and pick what's the best solution for them?

chenwj added inline comments.May 22 2017, 10:09 AM
docs/ProgrammersManual.rst
1291–1295

Well, that's usually what people will try first (including me). After trail and error, I found MacPorts would be the easier and feasible one. We can rephrase somehow to say MacPorts is one solution, and there are many others can try if MacPorts fail.

The p

docs/ProgrammersManual.rst
1291–1295

i'm with davide on this one.
THe problem with what you suggest is that when macports now becomes out of date, or whatever, we have to update this again :)

Personally, i used homebrew to install it (and had no issue)
in the past, people used fink (but nobody does anymore).
It'd be nice to not have to worry that our random install instructions will be out of date :)

It's one thing when they are critical to llvm development (which we obviously must keep easy and up to date), but this is pretty secondary, so i think it would probably be better to just tell people "install graphviz" rather than trying to say how to do it .

MatzeB added a subscriber: MatzeB.May 22 2017, 3:31 PM
MatzeB added inline comments.
docs/ProgrammersManual.rst
1291–1295

In my experience the packages on graphviz.org work better than the homebrew/macports ones. The macports/homebrew ones would always annoyingly go through X11 to displays stuff and were for some reason a lot slower than the packages on graphviz.org...

But indeed what works best may change from time to time and this may be more apropriate for a mailinglist question than giving a definite answer in the documentation...

MatzeB added inline comments.May 22 2017, 3:34 PM
docs/ProgrammersManual.rst
1291–1295

I am also convinced we would do better if LLVM gets out of the business of starting graphviewers and just produces a few .dot files and lets the user figure out how to open them. (but that is of course more work than just patching the documentation).

dberlin added inline comments.May 22 2017, 3:44 PM
docs/ProgrammersManual.rst
1291–1295

The homebrew ones don't use x11, they build/install the macos version :)
(dunno about macports)

As for producing dot files/etc, i think it's probably reason to call "open" on the thing and whatever happens, happens.

MatzeB added inline comments.May 22 2017, 3:51 PM
docs/ProgrammersManual.rst
1291–1295

i think it's probably reason to call "open" on the thing and whatever happens, happens.

  • I remember having some discussion already because open/xdg-open/gnome-open etc. do not agree on whether they block (and wait for the application to quit) or not. Not necessarily a reason not do it though.
  • MachineScheduler/SelectionDAG today create a graph per basic block, I often only want to look at 1 of the N blocks in my function anyway and today it is spamming we with N windows each time. Manually opening them I could just ignore N-1 of the dot files.
chenwj added inline comments.May 23 2017, 5:46 AM
docs/ProgrammersManual.rst
1291–1295

@davide @dberlin @MatzeB Do we have some kind of agreement what's the next step? ;-)

I know I can make a little hack, let llc keep the dot files, then call command-line tool to open them. The intention of this patch is documenting the simplest instruction for Dummies (like me, a MacOS newbie), who just want to see what those Dags looks like, don't care X11 will be installed, don't want to tweak anything else for a pop-Window showing Dags. For those Unix/MacOS experts, they can find how to get things done without too much help from the document.

MacPorts is just happened to be the one works based on my recent experience. Saying it's the only choice is not my intension. So maybe we can come up statements helping MacOS dummies. :-)

grosser resigned from this revision.May 24 2017, 12:12 PM

Gonna be dropping out as reviewer as I don't really have MacOSX and there are enough reviewers in the discussion. My two cents: I would likely also avoid to put too specific instruction into the documentation for the reasons others pointed out.

chenwj abandoned this revision.Jun 18 2017, 12:56 AM