其他分享
首页 > 其他分享> > libpcap编译期间类型冲突

libpcap编译期间类型冲突

作者:互联网

我正在尝试使用交叉编译器arm-linux-gcc编译libpcap.当我运行“ make”时,我得到一个错误:

./pcap-linux.c:254:14: conflicting types for socklen_t /usr/arm-linux-gnueabi/include/unistd.h:275:21: note previous declaration of 'socklen_t' 

我也尝试过使用通用gcc进行编译,但是我有同样的错误.我在Ubuntu上工作.如何解决这个问题

解决方法:

pcap-linux.c通过以下方式创建别名:

#ifndef HAVE_SOCKLEN_T
typedef int     socklen_t;
#endif

您应该将-DHAVE_SOCKLEN_T传递给编译器或放入

#define HAVE_SOCKLEN_T

到某些标头(通常是通过配置脚本或类似的文件自动生成config.h来完成).

似乎您跳过了构建配置步骤,因此请准备好查看另一个奇怪的构建错误.

标签:gcc,cross-platform,libpcap,c-3,linux
来源: https://codeday.me/bug/20191118/2027781.html