libstdC++崩溃在Ubuntu 64位
问题描述:
我有几个GUI库从RHEL6.2系统64位机器编译。我的任务是在Ubuntu 64位计算机上运行它.. 所以我想它在 的Ubuntu 12.04.1 &的Ubuntu 11.04 在两个IM面临着类似的问题..libstdC++崩溃在Ubuntu 64位
分割故障(核心转储) *分段故障
回溯: /usr/lib/x86_64-linux-gnu/libstdc++.so.6(_ZNSsC1ERKSs+0xb)[0x7f14e2728f2b]
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff5070f2b in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (gdb) bt
#0 0x00007ffff5070f2b in std::basic_string<char, std::char_traits<char>, std::allocator<char> > >::basic_string(std::string const&)() from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
我无法将其编译到我的电脑,因为源代码不适用于我。只有库,他们给了我.. 任何一个可以请帮我理清这个问题..
G ++版本 G ++(Ubuntu的/ Linaro的4.6.3-1ubuntu5)4.6.3
请帮助我..谢谢提前//
感谢您的答复..
是我穿过检查两个版本的GCC
这是我的主机,其中IM能够运行我的应用程序
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ls -ld /usr/lib/x86_64-linux-gnu/libstdc++.so.6
lrwxrwxrwx 1 root root 19 Apr 16 2012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 -> libstdc++.so.6.0.16
,并在那里我尝试运行,但不工作的电脑是
gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Copyright (C) 2011 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
ls -ld /usr/lib/x86_64-linux-gnu/libstdc++.so.6
lrwxrwxrwx 1 root root 19 Apr 16 2012 /usr/lib/x86_64-linux-gnu/libstdc++.so.6 -> libstdc++.so.6.0.16
都是精确的Ubuntu 12.04
我无法确定我的错在哪里。 。
请帮助..
答
的Ubuntu 12.04和11.04这两个使用比RHEL6.2大幅更新库。检查stdlib的版本。我敢打赌,他们是不同的。
一般来说,你不能只拿起一个二进制文件(程序或库)并在另一个上运行它。如果你有.rpm或.deb包,你会发现应该有版本依赖。
您也可以使用ldd查看您的库依赖于哪些其他库。