tcpdump交叉编译

发布于:2024-11-27 ⋅ 阅读:(111) ⋅ 点赞:(0)

TCPDUMP在Libpcap上开发。

首先需要编译libcap。

网上那么多教程,下载地址都只给了一个英文的官网首页, 你尽可以试试,从里面找到下载地址都要费半天时间。 \color{red}网上那么多教程,下载地址都只给了一个英文的官网首页,\\ 你尽可以试试,从里面找到下载地址都要费半天时间。 网上那么多教程,下载地址都只给了一个英文的官网首页,你尽可以试试,从里面找到下载地址都要费半天时间。

下载地址:https://www.tcpdump.org/release/

本文使用的libcap版本是libpcap-1.10.5,tcpdump版本是tcpdump-4.99.5

编译libcap前要设置操作系统、指令集、目录等。切换到解压目录执行如下命令:

./configure --prefix=/home/ljg/tcpdump/tools --host=arm-linux --target=arm-linux CC=arm-linux-gnueabihf-gcc --with-pcap=linux

然后执行make命令即可。

编译TCPDUMP前要设置操作系统、指令集、目录等。

需要注意的是:因为tcpdump的编译依赖于libcap,所以命令中"–prefix=/home/ljg/tcpdump/tools"这一字段值要与libcap的设置保持一致。

切换到TCPDUMP解压目录执行如下命令:

./configure --prefix=/home/ljg/tcpdump/tools --host=arm-linux --target=arm-linux CC=arm-linux-gnueabihf-gcc ac_cv_linux_vers=2

编译成功后的截图如下:

在这里插入图片描述

tcpdump命令格式:

tcpdump -i netcard_name port 12345 -w xxxxx.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中的CFLAGSLDFLAGS中添加"static"选项。
在这里插入图片描述

在这里插入图片描述

参考链接:

https://blog.csdn.net/qq_34539334/article/details/116839446


网站公告

今日签到

点亮在社区的每一天
去签到