交叉编译tcpdump

tcpdump的交叉编译

确定版本 tcpdump 4.9.2, libpcap 1.9.0

https://www.tcpdump.org/release/tcpdump-4.9.2.tar.gz
https://codeload.github.com/the-tcpdump-group/libpcap/zip/libpcap-1.9.0

先编译libpcap

export PATH=/opt/mips-linux-uclibc-4.3.6-v2/usr/bin/:$PATH
export CC=/opt/mips-linux-uclibc-4.3.6-v2/usr/bin/mips-linux-gcc

./configure –host=mips-linux –with-pcap=linux

并且将编译好的库文件和头文件复制到交叉编译链中,我的是:

cp -rf pcap /opt/mips-linux-uclibc-4.3.6-v2/usr/mips-unknown-linux-uclibc/sysroot/usr/include/
cp libpcap.a /opt/mips-linux-uclibc-4.3.6-v2/usr/mips-unknown-linux-uclibc/sysroot/usr/lib/

编译tcpdump

./configure –prefix=$PWD/_install –host=mips-linux –with-pcap=linux

vi Makefile
#INCLS = -I. -I/usr/include
INCLS = -I. -I/opt/mips-linux-uclibc-4.3.6-v2/usr/mips-unknown-linux-uclibc/sysroot/usr/include -I/opt/mips-linux-uclibc-4.3.6-v2/usr/mips-unknown-linux-uclibc/sysroot/usr/include/pcap

vi addrtoname.c
//#include <pcap-namedb.h>
#include <namedb.h>

执行 make 完成编译