centos 8 安装glibc-static、cannot find -lc 解决办法

在学习《深入理解计算机系统》时遇到gcc静态链接问题,错误提示缺少-lc。通过安装glibc-static解决,但yum找不到该包。最终采用从源码编译glibc并提取libc.a的方法成功解决。步骤包括下载glibc源码、编译源码及将编译得到的库文件复制到相应位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在学习csapp(深入理解计算机系统)的讲链接的内容时,有一段需要gcc静态链接编译程序,但是一直报错:/usr/bin/ld: cannot find -lc,经网上查找后发现需要安装glibc-static,用命令yum install glibc-static却发现找不到,查阅许久找到了一篇文章说自己编译glibc源码然后提取libc.a到自己需要的位置,已成功运行,特记录下来。

参考:https://blog.youkuaiyun.com/itas109/article/details/104226783

步骤1:下载gnu glibc源码,
如:https://ftp.gnu.org/pub/gnu/glibc/glibc-2.8.tar.gz

步骤2:编译glibc源码
2.1 解压glibc源码,
    如:tar -xf glibc-2.28.tar.gz
2.2 编译前检查必须工具是否齐全,
    如:./glibc-2.28/configure --prefix=/usr
2.3进行编译,
    如:make -j2

步骤3:将glibc源码中自己需要的各种库复制到自己需要的地方,
如需要glibc-static则:
    cp libc.a /usr/lib64/libc.a

 

最后附上成功后静态编译的文件:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值