如何在Mac上打开dot文件

111
首先,我是新手使用MacOS系统,我想要的是能够查看llc -view-dag-combine1-dags sum.ll输出的内容。在Mac上,llc将会生成dot文件到/tmp目录,并尝试打开应用程序来展示这个dot文件。我已经尝试过Graphviz,但是它不起作用(程序崩溃)。我想尝试其他工具,例如xdot。我通过brew install xdot安装了xdot,但是不知道如何让MacOS使用我刚刚安装的xdot打开dot文件。

或者有更好的工具可以查看dot文件吗?我希望保持简单。


xdot /tmp/dotfile? - arrowd
@arrowd llc 将调用 MacOS 的 open 命令来打开 dot 文件。我不想手动执行此操作。此外,如果无法打开临时的 dot 文件,llc 将删除它。 - chenwj
可能是 /usr/local/bin/xdot /tmp/dotfile - Mark Setchell
或者是 open -a /usr/local/bin/xdot --args /tmp/dotfile - Mark Setchell
FYI 错误:无效选项:--with-app 来源于 https://github.com/Homebrew/homebrew-core/issues/31510 - kula85
显示剩余4条评论
5个回答

218

我以前从未使用过“llc”。

但在我的情况下,为了处理 .dot 文件

我使用了 brew install graphviz

然后使用以下命令将 .dot 转换为 .png

dot -Tpng DocName.dot -o DocName.png

它每次运行都不会崩溃。


2
嗯,我认为问题不是很清楚,抱歉。llc在生成dot文件后将打开graphviz查看器(显然是gui),我想让open自动工作。 :-) - chenwj

43

如果您安装了Xcode,还可以使用Homebrew构建Graphviz GUI应用程序:

brew install graphviz --with-app

如果你已经安装了Graphviz Brew,你将需要执行以下操作:

brew reinstall graphviz --with-app

目前来看,这个方法似乎没有像cask那样安装一个符号链接到/Applications中,所以如果你想要这样做,你需要手动安装(或者复制应用程序)。

要找到应用程序包的位置,请查看构建日志,您应该会看到像这样的一行:

./configure --prefix=/usr/local/Cellar/graphviz/2.40.1

如果您没有构建日志,可以通过运行brew list graphvizbrew info graphviz来确定此路径。

打开文件夹(将其替换为您在上一步中确定的实际路径):

open /usr/local/Cellar/graphviz/2.40.1

在这里你应该会看到Graphviz.app,你可以将它移动/复制到/Applications目录下,或者通过拖动它到/Applications并按住option键来创建别名。

警告!在Mojave上可能存在问题。

请看下面Kim Stacks的评论:

截至2018-12-21,在macOS mojave上,在brew install命令中使用--with-app参数存在问题。参见gitlab.com/graphviz/graphviz/issues/1445。当修复完之后我会进行更新。

目前Graphviz本身似乎存在问题,阻止了在macOS Mojave上的构建。请不要在此答案中发表无效的评论,这将毫无作用。你可以关注上述问题以获取更多更新信息,并在开发人员解决问题时,我们将尝试更新此答案。

如果人们想帮助解决这个问题,有一个部分实现的升级PR需要一些爱心来完成它(请参见评论)。~~

更新:构建已修复,但Homebrew已删除GUI支持

这个故事继续。 Graphviz的上游构建破坏问题已于2020年8月解决。然而,homebrew团队显然实施了一个新的政策,从Homebrew配方中删除所有构建选项。在2019年1月,--with-app选项已从Graphviz配方中删除

恐怕我没有新的解决办法,除了手动从源代码构建。如果有人有任何想法,请在评论中分享。我将保留此答案,因为我认为这应该是正确的方法,我们只需要更多的倡导(和志愿者开发人员)来改善macOS上Graphviz用户的使用体验。


2
截至2018年12月21日,在macOS mojave上,使用brew install命令中的--with-app标志存在问题。请参见https://gitlab.com/graphviz/graphviz/issues/1445。修复工作正常时将更新此内容。 - Kim Stacks
@zeliboba 请查看上面的评论 - 这是一个在graphviz中正在跟踪的问题,网址为https://gitlab.com/graphviz/graphviz/issues/1445 - Eliot
8
错误:无效选项:--with-app - Davide
2
我在10.13.6上也遇到了“--with-app”错误,因此它不仅限于Mojave及更高版本,但可能影响所有macOS版本的最近brew更新。 - Thomas Tempelmann
1
@AKFourSeven 我认为现在唯一的选择是手动从源代码构建,或使用graphviz命令行应用程序,抱歉。您还可以尝试商业绘图软件,如OmniGraffle,它可以打开dot文件。 - Eliot
显示剩余7条评论

10

6
使用Homebrew安装"graphviz"时,加上"--with-app"参数可以安装图形用户界面(GUI)版本的Graphviz。 - Jonathon Hodges
只是在10.13(HighSierra)上重新安装graphviz,并使用homebrew,因为我通常使用它。FYI:homebrew还依赖于MacPorts!>> ==>安装graphviz --with-app >> ==>下载https://www.mirrorservice.org/sites/distfiles.macports.org/graphviz/graphviz-2.40.1.tar.gz>> ==> ./configure --prefix=/usr/local/Cellar/graphviz/2.40.1 --disable-php --disable-swig -...>> ==> make install>> ==> xcodebuild ... - rikb
5
不确定您使用的brew版本是哪一个,但在Mojave上我收到了错误消息:“无效选项:--with-app”@JonathonHodges - marknuzz
12
我仍在使用High Sierra操作系统,但我发现with-app选项不再可用。 - Robert P. Goldman
2
2021年,有其他人弄清了--with-app是什么吗? - dcsan
with-app在2021年无法使用。 - Exploring

3
您可以通过brew安装graphviz。 BrewInstall是一个方便的网站,可以获取安装所有Mac应用程序的步骤。我在BrewInstall上找到了以下答案。

首先使用以下命令安装brew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null

现在使用以下命令通过brew安装graphviz
brew install graphviz

要安装带有GUI版本的软件,运行以下命令而非上面的命令:
brew install graphviz --with-app

-7

macOS 的新版本允许您切换查看/处理隐藏文件的能力。

对于在 macOS 上开发的人员 - 在 macOS 文件系统中按下 Command + Shift + Period (Command + Shift + .) 将会隐藏或显示不可见文件。这将允许您切换创建和处理点文件的能力。

对于简单查看或编辑点文件,这种方法可能是最好的。请注意,虽然此切换处于活动状态时,似乎是系统范围的开关,允许其他应用程序像处理任何文本文件一样访问/打开点文件。


2
虽然对于隐藏文件(即以点开头的文件,例如“.gitignore”),这是正确的,但本问题涉及DOT格式中的文件。因此,此答案与问题无关。 - Gerrit-K

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接