make menuconfig出现/usr/bin/ld: cannot find -lncurses

本文介绍了如何解决因64位与32位库兼容性导致的软件构建错误。当遇到缺少特定库文件的问题时,可以通过检查已安装的库、配置文件ld.conf.d以及兼容性库来解决。文章还提到了一个具体案例,即通过安装lib32ncurses5-dev解决了编译过程中的问题,并提供了解决/usr/include目录下缺失asm文件夹的方法。

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

开始怀疑是没有安装libncurses-dev,结果发现已经安装:



研究发现是64bit/32bit lib兼容的问题,用apt-get install lib32ncurses5-dev安装就ok了:


总结:遇到这种问题,首先看有没有这个lib,如果有这个lib看ld.conf.d下面有没有把库链接进去,如果有链接进去还是报错,就要考虑lib兼容的问题


/usr/include/bits/socket.h:349:24: fatal error: asm/socket.h: No such file or directory

/usr/include/目录下面没有asm文件夹导致,ln -s x86_64-linux-gnu/asm asm解决



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值