【问题标题】:gnuplot : Aborted (core dumped)gnuplot:中止(核心转储)
【发布时间】:2016-09-23 06:10:21
【问题描述】:

我刚刚使用标准 configure make make install 在我的 Ubuntu 14.04 上安装了 gnuplot 4.6.6。但在那之后我无法绘制任何东西。会发生这样的事情:

gnuplot> pl x
Aborted (core dumped)

我在网上找不到针对这个特定问题的任何解决方案。有任何想法吗? 提前致谢。

编辑:我在文本文件中编写了相同的命令并尝试在该文件上运行 gnuplot:

gnuplot test.plt

它给出了一些关于可能是什么问题的提示:

Fatal Error: Mismatch between the program and library build versions detected.
The library used 2.8 (no debug,Unicode,compiler with C++ ABI 1002,wx containers,compatible with 2.6),
and your program used 2.8 (no debug,Unicode,compiler with C++ ABI 1009,wx containers,compatible with 2.6).

这里是所有链接库:

linux-gate.so.1 =>  (0xb7729000)
libreadline.so.6 => /lib/i386-linux-gnu/libreadline.so.6 (0xb76ca000)
libgd.so.3 => /usr/lib/i386-linux-gnu/libgd.so.3 (0xb7664000)
liblua5.1.so.0 => /usr/lib/i386-linux-gnu/liblua5.1.so.0 (0xb7635000)
libwx_gtk2u_core-2.8.so.0 => /usr/lib/i386-linux-gnu/libwx_gtk2u_core-2.8.so.0 (0xb7303000)
libwx_baseu-2.8.so.0 => /usr/lib/i386-linux-gnu/libwx_baseu-2.8.so.0 (0xb71bf000)
libpangocairo-1.0.so.0 => /usr/lib/i386-linux-gnu/libpangocairo-1.0.so.0 (0xb71b2000)
libpango-1.0.so.0 => /usr/lib/i386-linux-gnu/libpango-1.0.so.0 (0xb7165000)
libcairo.so.2 => /usr/lib/i386-linux-gnu/libcairo.so.2 (0xb7041000)
libgobject-2.0.so.0 => /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 (0xb6fef000)
libglib-2.0.so.0 => /lib/i386-linux-gnu/libglib-2.0.so.0 (0xb6ee3000)
libgdk-x11-2.0.so.0 => /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0 (0xb6e34000)
libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xb6d2c000)
libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb6ce5000)
libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xb6cc7000)
libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb6cab000)
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb6afc000)
libtinfo.so.5 => /lib/i386-linux-gnu/libtinfo.so.5 (0xb6ada000)
libjpeg.so.8 => /usr/lib/i386-linux-gnu/libjpeg.so.8 (0xb6a7e000)
libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0xb6a64000)
libpng12.so.0 => /lib/i386-linux-gnu/libpng12.so.0 (0xb6a3c000)
libfreetype.so.6 => /usr/lib/i386-linux-gnu/libfreetype.so.6 (0xb699c000)
libfontconfig.so.1 => /usr/lib/i386-linux-gnu/libfontconfig.so.1 (0xb6961000)
libXpm.so.4 => /usr/lib/i386-linux-gnu/libXpm.so.4 (0xb694e000)
libvpx.so.1 => /usr/lib/i386-linux-gnu/libvpx.so.1 (0xb677d000)
libtiff.so.5 => /usr/lib/i386-linux-gnu/libtiff.so.5 (0xb6709000)
libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xb6704000)
libgtk-x11-2.0.so.0 => /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0 (0xb6294000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0 (0xb6270000)
libXinerama.so.1 => /usr/lib/i386-linux-gnu/libXinerama.so.1 (0xb626c000)
libXxf86vm.so.1 => /usr/lib/i386-linux-gnu/libXxf86vm.so.1 (0xb6266000)
libSM.so.6 => /usr/lib/i386-linux-gnu/libSM.so.6 (0xb625d000)
libpangoft2-1.0.so.0 => /usr/lib/i386-linux-gnu/libpangoft2-1.0.so.0 (0xb6247000)
libgmodule-2.0.so.0 => /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0 (0xb6241000)
libthai.so.0 => /usr/lib/i386-linux-gnu/libthai.so.0 (0xb6237000)
libpixman-1.so.0 => /usr/lib/i386-linux-gnu/libpixman-1.so.0 (0xb618e000)
libxcb-shm.so.0 => /usr/lib/i386-linux-gnu/libxcb-shm.so.0 (0xb618a000)
libxcb-render.so.0 => /usr/lib/i386-linux-gnu/libxcb-render.so.0 (0xb6180000)
libxcb.so.1 => /usr/lib/i386-linux-gnu/libxcb.so.1 (0xb615d000)
libXrender.so.1 => /usr/lib/i386-linux-gnu/libXrender.so.1 (0xb6152000)
libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb601e000)
libXext.so.6 => /usr/lib/i386-linux-gnu/libXext.so.6 (0xb600b000)
librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xb6002000)
libffi.so.6 => /usr/lib/i386-linux-gnu/libffi.so.6 (0xb5ffa000)
libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xb5fbc000)
libgio-2.0.so.0 => /usr/lib/i386-linux-gnu/libgio-2.0.so.0 (0xb5e3b000)
libXi.so.6 => /usr/lib/i386-linux-gnu/libXi.so.6 (0xb5e2b000)
libXrandr.so.2 => /usr/lib/i386-linux-gnu/libXrandr.so.2 (0xb5e20000)
libXcursor.so.1 => /usr/lib/i386-linux-gnu/libXcursor.so.1 (0xb5e14000)
libXcomposite.so.1 => /usr/lib/i386-linux-gnu/libXcomposite.so.1 (0xb5e10000)
libXdamage.so.1 => /usr/lib/i386-linux-gnu/libXdamage.so.1 (0xb5e0c000)
libXfixes.so.3 => /usr/lib/i386-linux-gnu/libXfixes.so.3 (0xb5e06000)
/lib/ld-linux.so.2 (0xb772a000)
libexpat.so.1 => /lib/i386-linux-gnu/libexpat.so.1 (0xb5ddd000)
liblzma.so.5 => /lib/i386-linux-gnu/liblzma.so.5 (0xb5db6000)
libjbig.so.0 => /usr/lib/i386-linux-gnu/libjbig.so.0 (0xb5da7000)
libatk-1.0.so.0 => /usr/lib/i386-linux-gnu/libatk-1.0.so.0 (0xb5d86000)
libICE.so.6 => /usr/lib/i386-linux-gnu/libICE.so.6 (0xb5d6c000)
libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xb5d65000)
libharfbuzz.so.0 => /usr/lib/i386-linux-gnu/libharfbuzz.so.0 (0xb5d0e000)
libdatrie.so.1 => /usr/lib/i386-linux-gnu/libdatrie.so.1 (0xb5d05000)
libXau.so.6 => /usr/lib/i386-linux-gnu/libXau.so.6 (0xb5d01000)
libXdmcp.so.6 => /usr/lib/i386-linux-gnu/libXdmcp.so.6 (0xb5cfa000)
libselinux.so.1 => /lib/i386-linux-gnu/libselinux.so.1 (0xb5cd6000)
libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xb5cbe000)
libgraphite2.so.3 => /usr/lib/i386-linux-gnu/libgraphite2.so.3 (0xb5c98000)

【问题讨论】:

  • ldd gnuplot 返回什么? (将 gnuplot 替换为 gnuplot 的完整路径)并请提供 gnuplot 的版本(show version 在 gnuplot 终端中)
  • 你用什么编译器编译 Gnuplot?
  • @bibi: snehal@snehal-ThinkCentre-Edge-72z:~$ ldd gnuplot ldd: ./gnuplot: No such file or directory
  • @ewcz:我直接使用标准的 configure make install 从源代码安装它。
  • ldd `which gnuplot`

标签: ubuntu gnuplot


【解决方案1】:

我能够在全新的 32 位 Ubuntu 14.04.5(使用 Gnuplot 4.6.6)安装上重现该问题。如错误消息所示,由于 ABI 不一致,该问题与 wxWidgets 库(提供 wxt 终端)有关。这表明 Gnuplot 是使用不同版本的 gcc 编译的,而不是用于生成库的版本。例如installing gcc 5.x 并使用它来编译 Gnuplot 会产生提到的 Aborted (core dumped) 错误。

要解决这个问题,可以:

  1. 放弃wxt终端并离题,例如set terminal x11
  2. 用 Ubuntu 的 14.04 原版gcc4.8.x 重新编译 Gnuplot
  3. 强制执行旧 ABI:

    export CXXFLAGS="-fabi-version=2"
    ./configure [your options] && make && make install 
    

【讨论】:

  • 我之前使用的是 4.6.6 并尝试安装 5.x 但无法安装,因为当我运行 make 时,我收到错误:This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options。你能帮我解决这个问题吗?
  • 4.6.6 和 5.x 现在指的是 Gnuplot 还是 gcc?
  • 指gnuplot
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-14
  • 2018-06-12
  • 2016-10-06
  • 2020-12-08
相关资源
最近更新 更多