编译libpcap结果对'pcap_parse'的未定义引用

时间:2011-12-30 17:01:41

标签: android android-ndk cross-compiling libpcap

很抱歉,如果我错了,但我正在尝试使用NDK编译Android的libpcap。最后,我收到了这个错误:

在语法中我们可以看到:

#ifndef YYBISON
int yyparse(void);

int
pcap_parse()
{
   return (yyparse());
}
#endif

=>如果未定义YYBISON,则定义pcap_parse

但是在gencode.c中,我们有(第342行)

lex_init(buf ? buf : "");
init_linktype(pcap_datalink(p));
(void)pcap_parse();

AND gencode.h(第299行)

struct bpf_insn *icode_to_fcode(struct block *, int *);
int pcap_parse(void);
void lex_init(char *);
void lex_cleanup(void);

=>如果在没有任何测试用例的情况下使用pcap_parse !! 如果定义了YYBISON,则结果是libpcap错误 (未定义的函数pcap_parse)

我的错误在哪里?

1 个答案:

答案 0 :(得分:0)

解决方案非常简单。我只是在消息来源做make distclean。如果它不起作用,请尝试git reset --hard,并且应该修复它。

谢谢大家