我正在尝试运行一个在Ubuntu18.04上开发的C++程序。它使用JSON共享库。它编译和运行在我的Ubuntu18.04系统上没有任何问题。但是它在Ubuntu14.04系统上编译,但在运行时崩溃,报告如下消息-
*** Error in `./main.out': corrupted size vs. prev_size: 0x00007fdd54f49e30 ***Aborted (core dumped)经过深入研究,我发现JSON库有问题。我使用ldd命令检查了链接的JSON库。它给了我Ubuntu 18.04的输出
libjson-c.so.3 => /lib/x86_64-linux-gnu/libjson-c.so.3 (0x00007ff16a88c000)以下是Ubuntu 14.04 -
libjson-c.so.2 => /lib/x86_64-linux-gnu/libjson-c.so.2 (0x00007f0848838000)我猜JSON版本有问题。我在谷歌上找不到任何有用的信息。知道这是什么问题吗?
发布于 2018-12-13 02:26:22
Ubuntu18.04LTS包含一个更新版本的库"libjson-c3“。以前的版本,包括Ubuntu16.04LTS和14.04LTS都有一个更老的版本"libjson-c2“。
这些版本是不同的,它们是不兼容的。
如果必须在14.04上运行代码,则需要仔细检查libjson调用,以确定这些兼容性在哪里。
或者,您可以尝试在更新的18.04上运行应用程序,而不必担心支持14.04
https://stackoverflow.com/questions/52941039
复制相似问题