gpt4 book ai didi

c - 由于缺少 pcap 定义而无法制作 ethping 程序

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:53:54 25 4
gpt4 key购买 nike

我似乎在构建 ethping 可执行文件时遇到了问题。它找不到 pcap.h 中定义的任何函数。

起初我以为它没有找到pcap.h,但我检查了$PATH/usr/include是那里(pcap.h 有一个 stub ,然后包含 pcap/pcap.h,但看起来也不错)。

我什至尝试了 -I/usr/include-I/usr/include/pcap,但仍然没有成功。

我已经搜索了大量的论坛帖子,但找不到解决方案。所以这就是我来这里的原因。有什么想法吗?

root:src# gcc -Wall -Werror -ggdb -g -O2 -lpcap -o ethping ethping.o ieee8021ag.o dot1ag_eth.o 
ethping.o: In function `timeout_handler':
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:65: undefined reference to `pcap_breakloop'
ethping.o: In function `main':
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:183: undefined reference to `pcap_open_live'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:202: undefined reference to `pcap_compile'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:203: undefined reference to `pcap_setfilter'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:254: undefined reference to `pcap_next_ex'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:257: undefined reference to `pcap_perror'
collect2: error: ld returned 1 exit status

类似地:

root:src# gcc -Wall -Werror -ggdb -g -O2 -lpcap -I /usr/include/pcap -o ethping ethping.o ieee8021ag.o dot1ag_eth.o 
ethping.o: In function `timeout_handler':
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:65: undefined reference to `pcap_breakloop'
ethping.o: In function `main':
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:183: undefined reference to `pcap_open_live'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:202: undefined reference to `pcap_compile'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:203: undefined reference to `pcap_setfilter'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:254: undefined reference to `pcap_next_ex'
/home/ubuntu/Downloads/dot1ag-utils-master/src/ethping.c:257: undefined reference to `pcap_perror'
collect2: error: ld returned 1 exit status
root:src#

最佳答案

更改编译行修复了它。将 -lpcap 放在最右边让它按建议运行。

gcc -Wall -Werror -ggdb -g -O2  -o ethping ethping.o ieee8021ag.o dot1ag_eth.o -lpcap

关于c - 由于缺少 pcap 定义而无法制作 ethping 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28354968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com