我正在为OSX 10.8开发。我刚刚通过MacPorts安装了libpcap
并尝试运行一个简单的设备搜索器(如下)
#include <stdio.h>
#include <pcap.h>
int main(int argc,char *argv[])
{
char *dev, errbuf[PCAP_ERRBUF_SIZE];
dev = pcap_lookupdev(errbuf);
if(dev == NULL)
{
fprintf(stderr, "Couldn't find default device: %s\n", errbuf);
return(2);
}
printf("Device %s\n", dev);
return(0);
}
在尝试使用g++进行编译时,我得到:
Undefined symbols for architecture x86_64:
"_pcap_lookupdev", referenced from:
_main in ccIMp1m2.o
任何有用的建议,这样我就可以真正开始学习这些东西了,这将是很棒的!我用谷歌搜索了10到15分钟,但是在我的设置问题上找不到很多东西。
最佳答案
您需要链接libpcap
。添加到编译器命令行中的-lpcap
可能会起作用。如果安装在奇怪的地方(可能是这样,因为您是从MacPorts获得的),则可能需要-L/path/to/libpcap -lpcap
。
关于c++ - pcap_lookupdev未定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14532462/