libpcapのインストールとテスト

2242 ワード

libpcapのインストールとテスト
 
Iまずlibpcapをインストールする
     1.  GNU M 4のダウンロードとインストール   , makefileの生成に使用
     2.  flexのダウンロードとインストール  $sudo apt-get install flex
     3.  bisonのダウンロードとインストール 
     4.  libpcapをダウンロードしてインストールします.
 
     1.Libpcapの公式サイトはhttp://tcpdump.org/release、最新のlibpcapをダウンロード
     2.  tar -xvf libpcap-1.3.0.tar.gz
     3. cd libpcap-1.3.0
         ./configure
     4.flexが欠けている場合:$sudo apt-get install flex
     5.通過後、makeを行う $make
     6,   次の場合:
         yacc -d ./parse.y
make: yacc: Command not found
make: *** [parse.c] Error 127
          $sudo apt-get install-y byaccのインストール
         続けて
     7.  makeの後にインストール: root権限が必要です
           $sudo make install
 
II libpcapが使いやすいかどうかをテストします.
 
#include <stdio.h>
#include <pcap.h>
 
int main(int argc, char *argv[]) {
        char errbuf[PCAP_ERRBUF_SIZE];
        pcap_if_t* devs;
        pcap_if_t* d;
        unsigned int i = 0;
                     
        //     dev
        if (-1 == pcap_findalldevs(&devs, errbuf)) {
            fprintf(stderr, "Could not list device: %s
", errbuf); } else { d = devs; while (d->next != NULL) { printf("%d:%s
", i++, d->name); d = d->next; } } // dev pcap_freealldevs(devs); return (0); }

 
コンパイルコマンド:
gcc test.c -lpcap

 -lpcap、リンクライブラリを必ず追加してください.そうしないと、正しくリンクできません.また、ubuntuの場合、./a.outを実行するには管理者権限が必要です.分かります.
    エラーが発生した場合:error while loading shared libraries:libpcap.so.1:cannot open shared object file:No such file or directory
    ソフト接続を作成します:/usr/libの下にlibpcap.so.1.x.x.xファイルを見つけ、バックアップをコピーし、libpcap.so.1と名前を変更し、libpcap.so.1を/usr/libディレクトリの下にコピーすればいいです.
   ln -s/usr/lib/libpcapso.1.x.x/usr/lib/libpcap.so.1
    sudo ./aout