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查看您的库依赖于哪些其他库。