一、libpcap交叉编译

  1、下载libpcap-1.8.1(http://www.tcpdump.org/)

  2、解压

  3、修改configure文件

    a、注释掉

      #if test -z "$with_pcap" && test "$cross_compiling" = yes; then
      #as_fn_error $? "pcap type not determined when cross-compiling; use --with-pcap=..." "$LINENO" 5
      #fi

      不然会出现with-pcap的错误

    b、网上还说注释掉

      #   if test $ac_cv_linux_vers = unknown ; then
         #   { { echo "$as_me:$LINENO: error: cannot determine Linux version when cross-compiling" >&5
         #echo "$as_me: error: cannot determine linux version when cross-compiling" >&2;}
         #   { (exit 1); exit 1; }; }
         #   fi

      但是我没有管它一样配置和编译通过

  4、写入下面命令到aaa文件中

    CFLAGS+=-mips32r2
    CFLAGS+=-muclibc
    ./configure --prefix=/home/hanqiukun/mywork/tcpdump/libpcap --host=mips-linux --target=mips CC=/opt/trendchip/mips-linux-uclibc/usr/bin/mips-linux-uclibc-gcc

    其中CFLAGS是根据我们自己的需要写入的,执行

  4、make和make install

二、tcpdump交叉编译

  1、下载tcpdump-4.9.1(http://www.tcpdump.org/)

  2、解压到libpcap的同一目录下(为了方便)

  3、写下面的内容到aaa文件

    CFLAGS+=-mips32r2
    CFLAGS+=-muclibc
    ./configure --prefix=/home/hanqiukun/mywork/tcpdump/tcpdump --host=mips-linux CC=/opt/trendchip/mips-linux-uclibc/usr/bin/mips-linux-uclibc-gcc

    其中CFLAGS是根据我们自己的需要写入的,执行

  4、如果libpcap的头文件和库文件路径不对,修改Makefile的INCLS和LIBS(默认会静态链接libpcap.a的库文件)

  5、make和make install

三、一般使用方法

  1、拷贝到/tmp目录下,

  2、/tmp/tcpdump -i eht0.2 -w /tmp/qqqqqqq.cap

04-29 03:24