天天看點

Ubuntu16.04 install libpcap安裝和測試1.官網下載下傳安裝包:2.開始配置3.建立連結4.測試5.效果

1.官網下載下傳安裝包:

http://www.tcpdump.org/#latest-release

2.開始配置

cd libpcap-1.9.0
./configure
           

報錯1:configure: error: Neither flex nor lex was found.

解決1:

sudo apt-get install flex

報錯2:configure: error: yacc is insufficient to compile libpcap.

libpcap requires Bison, a newer version of Berkeley YACC with support

解決2:

sudo apt-get install -y byacc

make
sudo make install
           

3.建立連結

報錯3:雖然可以成功編譯檔案,但是在運作的時候卻提示

1.cpp:(.text+0x43):對‘pcap_lookupdev’未定義的引用

解決3:這是因為libpcap.so.1預設安裝到了/usr/local/lib下,我們做一個符号連結到/usr/lib/下即可。

sudo ln -s /usr/local/lib/libpcap.so.1 /usr/lib/libpcap.so.1
           

4.測試

#include <pcap.h>
#include <stdio.h>
 
int main()
{
  char errBuf[PCAP_ERRBUF_SIZE], * device;
  
  device = pcap_lookupdev(errBuf);
  
  if(device)
  {
    printf("success: device: %s\n", device);
  }
  else
  {
    printf("error: %s\n", errBuf);
  }
  
  return 0;
}

           

輸入以下代碼:

g++ test.c -o test -lpcap
           

5.效果

Ubuntu16.04 install libpcap安裝和測試1.官網下載下傳安裝包:2.開始配置3.建立連結4.測試5.效果