解决Linux环境下安装muduo库报错muduo-master/muduo/base/Date.cc:58:9: error: invalid use of incomplete type

解决Linux环境下安装muduo库报错muduo-master/muduo/base/Date.cc:58:9: error: invalid use of incomplete type ‘const struct tm’

在一台新的虚拟机上安装muduo网络库时遇到了一个编译错误:

在这里插入图片描述
第一反应时安装依赖的boost库时出现错误,按照网络上的各种方法重新安装均无法解决。因为muduo库是一个使用十分广泛的网络库,非常多人经过长时间使用均未出现类似的编译阶段问题,所以一直认为是自己的虚拟机配置以及依赖的安装问题。

尝试解决无果后我打开报错的文件查看原因,报错提示是代码中关于日期时间的部分出现了incomplete type,也就是其中的tm结构体,显示这是一个无效的使用。

我阅读源码发现这是作者希望使用c库函数中的tm结构体来表示时间,但是在源码的Date.h中却没有引入相应的头文件。

于是我在、usr/include/目录下找到关于时间的头文件time.h,将其引入

在这里插入图片描述

之后再在muduo目录下进行编译即可通过

./build.sh

在这里插入图片描述

再进行安装

./build.sh install
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值