LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1594|回复: 1

在64位计算机上安装gcc-4.2.1,只得到了32位的库,怎么办?

[复制链接]
发表于 2007-8-10 15:23:54 | 显示全部楼层 |阅读模式
计算机的ARCH是x86_64-unknown-linux-gnu

从源文件编译安装gcc-4.2.1后,写了个最简单的含有一个类的Hello world
结果是用`g++ -m32`编译一切正常;
用`g++ -m64`编译后运行则报找不到libstdc++.so.6;
用`g++`编译等同于第二种情况。
这说明安装的gcc默认按照64比特编译程序。但是装上的gcc4.2.1是32位版本。

ldconfig与/etc/ld.so.conf都是正确的。

我猜测安装gcc时候configure识别出机器类型是x86_64-unknown-linux-gnu后按照32位机器往下编译的

怎么办?
 楼主| 发表于 2007-8-10 15:35:32 | 显示全部楼层
解决了:

我把gcc安装到了/home/mydir/local下,
在/etc/ld.so.conf中添加了一行  /home/mydir/local/lib
ldconf后,我以为这就可以了。实际上上述目录中的确只有32位的libstdc++.so.6

我刚刚想到还应该有lib64这个目录。果然,存在/home/mydir/local/lib64
把这个添加入/etc/ld.so.conf并放在32位库目录的前面。然后ldconf。一切OK了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表