在ubuntu10.10的lampp下搭建北大的tse 出现ibgcc_s.so.1: version `GCC_4.2.0' not found(required by libstdc++.so.6

开始很顺利,一切OK,但后来出现了错误,是在运行对应的CGI TSESearch时出现的,查看日志,发现下面的信息


Sat Aug 04 15:42:45.305205 2012] [cgi:error] [pid 2543] [client 127.0.0.1:52481] AH01215: /home/mty/myindex/yc-cgi-bin/index/TSESearch: /opt/lampp/lib/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6), referer: http://localhost/public_html/

[Sat Aug 04 15:42:45.305268 2012] [cgi:error] [pid 2543] [client 127.0.0.1:52481] End of script output before headers: TSESearch, referer: http://localhost/public_html/

认真的读了一下,发现是

libstdc++.so.6需要libgcc_s.so.1支持GCC——4.2.0

而我查看了一下LAMPP提供的libgcc_s.so.1支持什么

运行命令strings libgcc_s.so.1 |grep GCC_

发现最高才到3.4,和4.2.0几乎差了一个版本。这是为什么?因为LAMPP给你提供了它觉得你支持你的CGI的版本,而我的GUN GCC是4.4.0版本 它至少需要4.2.0的libgcc_s.so.1,其实本身gcc在/lib目录下会提供一个libgcc_s.so.1,但这个是运行GCC命令时的,然后我把lib下的COPY过去,一运行就可以。



总结:该错误不仅适用于LAMPP搭建TSE   适合一切出现libstdc++.so.6需要libgcc_s.so.1高版本的情况,一般出现这种原因很可能是你的程序自己带了一个libgcc_s.so.1  而程序带的又无法和你装的GUN GCC匹配。。所以你需要做的就是把GCC自己的LIBGCC——S。SO。1替换程序的,就OK了。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值