我将graphviz(v2.28.0)用作C ++应用程序中的库,我想使用点布局来呈现图形。一切正常,直到我调用gvLayout(_context,_graph,“ dot”); 输出以下错误的函数:
Error: Layout type: "dot" not recognized. Use one of:
Run Code Online (Sandbox Code Playgroud)
链接时使用以下库标志:
-lgvc -lgraph -lpathplan -lcdt -lgvplugin_dot_layout
Run Code Online (Sandbox Code Playgroud)
从Unix命令行调用dot可以正常工作。我究竟做错了什么 ?
您可能已经解决了这个问题或放弃了,但是我在这里结束了,所以我相信其他人会...
插件需要显式加载。我不确定这是否与静态链接有关,还是在将graphviz用作库时需要执行此操作。
这个固定的点对我来说:
extern gvplugin_library_t gvplugin_dot_layout_LTX_library;
gvAddLibrary(gvc, &gvplugin_dot_layout_LTX_library);
Run Code Online (Sandbox Code Playgroud)