tcpdump交叉编译

📅 2026/8/22 12:32:15
tcpdump交叉编译
由于TCPDUMP基于Libpcap上开发所以首先需要编译libcap。网上那么多教程下载地址都只给了一个英文的官网首页 你尽可以试试从里面找到下载地址都要费半天时间。 \color{red}网上那么多教程下载地址都只给了一个英文的官网首页\\ 你尽可以试试从里面找到下载地址都要费半天时间。网上那么多教程下载地址都只给了一个英文的官网首页你尽可以试试从里面找到下载地址都要费半天时间。tcpdump下载地址https://www.tcpdump.org/release/本文使用的libcap版本是libpcap-1.10.5tcpdump版本是tcpdump-4.99.5编译libcap前要设置操作系统、指令集、目录等。切换到解压目录执行如下命令。powerpc指令集./configure--hostpowerpc-linux-gnu --with-pcaplinuxarm指令集./configure--prefix/home/ljg/tcpdump/tools--hostarm-linux--targetarm-linuxCCarm-linux-gnueabihf-gcc --with-pcaplinux然后执行make命令即可。编译TCPDUMP前要设置操作系统、指令集、目录等。需要注意的是因为tcpdump的编译依赖于libcap所以命令中–prefix/home/ljg/tcpdump/tools这一字段值要与libcap的设置保持一致。切换到TCPDUMP解压目录执行如下命令。powerpc版架构./configure--hostpowerpc-linux-gnu --with-pcaplinuxCPPFLAGS-I/home/ljg/Desktop/work/libpcap-1.10.6LDFLAGS-static -L/home/ljg/Desktop/work/libpcap-1.10.6LIBS-lpcaparm版架构./configure--prefix/home/ljg/tcpdump/tools--hostarm-linux--targetarm-linuxCCarm-linux-gnueabihf-gccac_cv_linux_vers2编译成功后的截图tcpdump命令格式tcpdump-inetcard_name port12345-wxxxxx.pcap另外还需要提醒的非常重要的一点假如编译出来的程序被上传到嵌入式设备 并且运行时有如下错误请在 M a k e f i l e 中的 C F L A G S 和 L D F L A G S 中添加 − − s t a t i c 选项。 \color{red}假如编译出来的程序被上传到嵌入式设备\\ 并且运行时有如下错误请在Makefile中的\\ CFLAGS和LDFLAGS中添加--static选项。假如编译出来的程序被上传到嵌入式设备并且运行时有如下错误请在Makefile中的CFLAGS和LDFLAGS中添加−−static选项。–static或者-static都可以为什么参考链接https://blog.csdn.net/qq_34539334/article/details/116839446