报错collect2: error: ld returned 1 exit status openssl报错

在centos7.7下用SSL通讯加密编程时,代码一直报错collect2: error: ld returned 1 exit status

查了很多资料一般是有因为两种错误:
1.是main函数中出错,函数名有错误或者函数在卖弄函数外定义,却在函数内部引用;
2.是链接库不全,或者链接库不全,或者版本不对;

但我链接的库和main函数都没有问题,才想起不久才把openssl升级,会不会是有残余的头文件残留。
于是查了libssl.so,libcrypto.so的版本和函数,发现确实有函数版本不一样。去查,头文件引进的路径
g++ -print-prog-name=cc1plus -v

发现在引进的路径在/usr/local/include的文件路径下有残余的1.1.0版本的openssl的头文件,将之删除,
便解决了问题。

==============================================================
关于openssl版本的问题,多说一句,我用的是1.0.2.k版本的openssl,以前系统里面有安装过1.1.0版本的openssl,
可能是卸载的时候出了点问题。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值