我安装了XHProf并希望查看调用图可视化。我点击View Full Callgraph
并首先收到以下消息:
执行 cmd 失败:“dot -Tpng”。标准错误:`sh:点:找不到命令'
经过一番谷歌搜索,我发现这是由于未安装Graphviz引起的。然后我安装了它:
$ yum install graphviz
并再次尝试。现在我收到以下错误消息:
执行 cmd 失败:“dot -Tpng”。标准错误:`错误:/usr/lib64/graphviz/config6 大小为零,或其他读取错误。
错误:/usr/lib64/graphviz/config6 大小为零,或其他读取错误。
“点”没有布局引擎支持
也许需要运行“dot -c”(使用安装程序的权限)来注册插件?
'
确实执行 ofdot -c
会导致错误:
$ dot -c
Error: /usr/lib64/graphviz/config6 is zero sized, or other read error.
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_pango.so.6" - file not found
Warning: Could not load "/usr/lib64/graphviz/libgvplugin_xlib.so.6" - file not found
Segmentation fault
但是文件libgvplugin_pango.so.6
和libgvplugin_xlib.so.6
那里并位于/usr/lib64/graphviz/
:
$ ls -l /usr/lib64/graphviz
total 724
...
lrwxrwxrwx 1 root root 26 May 19 13:58 libgvplugin_pango.so.6 -> libgvplugin_pango.so.6.0.0
-rwxr-xr-x 1 root root 22408 Sep 19 2012 libgvplugin_pango.so.6.0.0
lrwxrwxrwx 1 root root 25 May 19 13:58 libgvplugin_xlib.so.6 -> libgvplugin_xlib.so.6.0.0
-rwxr-xr-x 1 root root 15656 Sep 19 2012 libgvplugin_xlib.so.6.0.0
好吧,作为符号链接。但这应该没关系。无论如何,我也测试了这个案例:
mv /usr/lib64/graphviz/libgvplugin_pango.so.6 /usr/lib64/graphviz/libgvplugin_pango.so.6_DEACT
mv /usr/lib64/graphviz/libgvplugin_xlib.so.6 /usr/lib64/graphviz/libgvplugin_xlib.so.6_DEACT
cp /usr/lib64/graphviz/libgvplugin_pango.so.6.0.0 /usr/lib64/graphviz/libgvplugin_pango.so.6
cp /usr/lib64/graphviz/libgvplugin_xlib.so.6.0.0 /usr/lib64/graphviz/libgvplugin_xlib.so.6
没有效果,还是一样的错误。
这里出了什么问题以及如何使其正常工作?
环境:以 CentOS 6 作为来宾系统的 VirtualBox VM。