2012-06-14 58 views
0

我遇到了一个犯错的时候我安装JikesRVM,就是如何在openSUSE 11.2(x86_64)上安装/更新gcc-4.6?

skipping incompatible /usr/lib64/gcc/x86_64-suse-linux/4.4/libstdc++.so when searching for -lstdc++ 

所以我尝试安装/更新到更高版本。现在,机器已经有了

gcc (SUSE Linux) 4.4.1 [gcc-4_4-branch revision 150839] 

我是新来的openSUSE,你能帮忙吗?

谢谢!

+0

嗨德米特里,我只知道我有/usr/lib64/gcc/x86_64-suse-linux/4.4/libstdc++.so – JackWM

+0

后'zypper搜索libstdC++',我得到这些:'我| libstdC++ 44 i | libstdC++ 44-32bit i | libstdC++ 44-devel | libstdC++ 44-devel-32bit' – JackWM

+0

host.name = x86_64-linux – JackWM

回答

3

您需要为GNU C/C++编译器安装32位支持,因为x86_64上的JikesRVM目前仅支持32位体系结构。

要安装在OpenSuSE的11.2类型此支撑

sudo zypper install gcc44-32bit gcc-32bit libstdc++44-devel-32bit 

前两个提供为C语言和32位版本的libgcc中,GCC的低水平运行时库运行时支持。第三个提供了32位版本的libstdC++,既有静态导入库也有动态库。它是JikesRVM缺少的静态libstdC++。a。

要验证32位c + +构建的系统安装正确,您可以用openSUSE的11.2以下

echo "int main(){}" | g++ -x c++ -m32 - 

注意官方支持已结束测试。 Evergreen支持将于2013年推出。不过,即将更新至11.3或更高版本是合理的。

+0

之后,我得到这些“正在读取已安装的软件包... 'gcc44-32bit'已经安装 'gcc44-32bit'没有更新候选 'gcc-C++ - 32bit'找不到 'gcc- 32bit'已经安装 'gcc-32bit'没有更新候选 正在解决软件包依赖关系... 无事可做 “ – JackWM

+0

”对不起,我没有得到你。你能再解释一下吗? – JackWM

+0

令人惊叹!安装了最后一个库(libstdC++ 44-devel-32bit),并且构建了JikesRVM过去!是最后一个图书馆的原因吗?为什么这很重要,因为我已经有了其他3个类似的库? – JackWM