VScode远程终端报错/libwiringPi.so: undefined reference to `crypt‘解决办法

文章讲述了在编译过程中遇到的关于libwiringPi.so库引用crypt函数失败的错误,原因可能是缺少-crypt库、库路径问题或库文件损坏。提供了解决方案,包括在编译时添加-lcrypt选项以及推荐使用bcrypt或argon2替代crypt函数。
摘要由CSDN通过智能技术生成

 /usr/bin/ld: /usr/lib/gcc/aarch64-linux-gnu/11/../../../../lib/libwiringPi.so: undefined reference to `crypt'
collect2: error: ld returned 1 exit status

错误解析:

这个错误消息表示链接器无法找到`crypt`函数的定义,该函数被`libwiringPi.so`库引用。
可能的原因包括:
1. 编译时未指定包含`crypt`函数的库。您需要确保在编译时指定了正确的库。例如,如果`crypt`函数在`-lcrypt`库中,则应使用`gcc -L /path/to/library -lcrypt ...`进行编译。
2. 指定的库路径不正确或未包含所需的版本。请检查您的编译命令中的库路径和名称是否正确,并确保它们指向包含所需版本的库。
3. 所使用的库文件可能已损坏或缺失。尝试重新安装或替换相关库文件以解决问题。
请注意,从2021年5月7日起,Linux内核已弃用`crypt`函数,因此建议使用其他安全的方法来实现密码哈希,如`bcrypt`或`argon2`。

解决方法:

加上 -lcrypt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值