我使用./configure CXXFLAGS="-std=gnu++14 -Wno-unused-local-typedefs" PYTHON="/home/pmj27/anaconda2/bin/python2.7" CAIROMM_LIBS="-L/home/pmj27/anaconda2/include/cairomm-1.0/cairomm" --enable-openmp
在Ubuntu 16.04上从源代码编译了图形工具。我现在正在尝试使用图形工具运行脚本,但在下面的代码片段中会抛出错误:
gt.graph_draw(g,pos = gt.arf_layout(g, max_iter=0),output_size=(3000,3000),vertex_surface = image, vertex_size = 150, vertex_halo=False, vertex_fill_color=color,vertex_shape=shape,edge_pen_width = number, output='scheme1.pdf')
我得到的错误信息是:
python: symbol lookup error: /home/pmj27/anaconda2/lib/python2.7/site-packages/graph_tool/draw/libgraph_tool_draw.so: undefined symbol: _ZN5Cairo7ContextC1EP6_cairob
我在图工具邮件列表上给出的第一条建议是我需要添加到cairo库的路径。为此,我添加了
export LD_LIBRARY_PATH="/home/pmj27/anaconda2/lib"
到~/.bashrc
和~/.profile
。这并没有解决我的问题,现在Nautilus将不再启动,而是引发以下错误:
nautilus: symbol lookup error: /home/pmj27/anaconda2/lib/libgdk-3.so.0: undefined symbol: cairo_surface_set_device_scale
有人知道我需要做些什么来解决这个问题吗?我怎样才能找到cairo库的位置/我在那里寻找什么文件?
答案 0 :(得分:0)
如果您在Ubuntu上使用anaconda,那么您应该执行以下操作:
$ conda update conda
$ conda update anaconda
这应该有效。它对我有用。
希望它有所帮助。
答案 1 :(得分:0)
在执行python脚本(使用RDKit)时遇到了类似的问题。做了以下内容:
$ conda update conda
$ conda update anaconda
这对我有用。