QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1323|回复: 2

gcc编译出了这样的问题,请问如何解决 (已解决)

[复制链接]
发表于 2006-3-8 17:49:16 | 显示全部楼层 |阅读模式
终端中提示如下
/usr/bin/ld:/usr/lib/gcc/i686-magic-linux/3.4.3/../../../libc.so: file format not recognized; treating as linker script
/usr/bin/ld:/usr/lib/gcc/i686-magic-linux/3.4.3/../../../libc.so:5: syntax error
无端端的两个lib.so的文件都有错了,现在什么都编译不了
如何解决,重装gcc就行了吗?
环境:ml1.2,不够安装2.0beta3中的xorg,和kde的rpm包升级,
试过安装2.0beta3中的gcc的包,但情况不变

希望有人能帮我
现在的gcc版本为
Thread model: posix
gcc version 3.4.3 20041114 (Magic Linux 3.4.3-3)
是不是下载gcc的库文件覆盖原来的那两个就行
 楼主| 发表于 2006-3-8 18:15:18 | 显示全部楼层
我又装了2.0final版的gcc的rpm包
rpm -ivh --force --nodeps `ls | grep "gcc" `
安装完后
gcc -v 可以看到是3.4.4版了
但cd /usr/lib
    ls -l libc.so 这个库文件是不变的, 编译同样是那个问题
那么如何(哪里)才有libc.so来更新这个坏了的 libc.so 呢 ?
谁有可以附件上传一个给我,看看行不行
回复

使用道具 举报

 楼主| 发表于 2006-3-9 00:40:53 | 显示全部楼层
搞定了,
原来的libc.so内容如下
/* GNU ld script
   Use the shared library, but some functions are only in
   the static library, so try that secondarily.  */
OUTPUT_FORMAT(elf32-i386)
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a  AS_NEEDED ( /lib/ld-linux.so.2 ) )
看了一个liveCD的libc.so,把不同的修改了(就是把第5行的AS_NEEDED ( /lib/ld-linux.so.2 ))去掉,结果上面那个就没问题了(提示也是说第5行语法有误)

不过问题只解决了一半,为什么,因为我以为是gcc的问题,所以我又装了2.0final版的gcc的rpm包
rpm -ivh --force --nodeps `ls | grep "gcc" `
但是上面这样装不够的
还需要如下
rpm -ivh --force --nodeps `ls | grep "libstd" `
因为我只用c++这样就我的c++程序就没问题了,可以编译了
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-2 20:16 , Processed in 0.043618 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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