Bootstrap

网络抓包工具tcpdump 在海思平台上的编译使用

目录

2:下载源码

1:下载

2:编译

2.1:下载

2.2:编译libpcap

2.3:编译tcpdump

3:使用验证


音视频开发中经常用到抓包工具分析数据,这里是海思平台下的tcpdump工具编译使用流程,给各位参考

1:下载源码

1:下载

        官网地址:Home | TCPDUMP & LIBPCAP

2:编译

按照我的文件路径 如下:

2.1:下载

   后将两个文件统一放置在文件夹,并解压,执行指令:

    mkdir tcpdumptool_huis

    tar -xvf libpcap-1.10.5.tar.xz

    tar-xvf tcpdump-4.99.5.tar.xz
 

2.2:编译libpcap

        tcpdump 和其他许多网络分析工具都依赖于 libpcap 库,这是一个用于网络监控和数据包捕获的 C 语言库。libpcap 提供了捕获和发送网络数据包的接口,因此 tcpdump 需要 libpcap 来执行其核心功能

进入到 ibpcap-1.10.5中,执行指令:

cd libpcap-1.10.5/

CC=aarch64-himix100-linux-gcc ./configure --prefix=`pwd`/build --host=aarch64-himix100-linux --disable-shared

make && make install

解释:

CC=aarch64-himix100-linux-gcc 是指定 编译器

--prefix=`pwd`/build 是指定最后的安装路径

--host=aarch64-himix100-linux 是指定编译的目标主机类型

--disable-shared 是禁用动态库 编译静态库,这样使用方便

最后编译成功如下:

2.3:编译tcpdump

进入到 tcpdump-4.99.5中,执行指令:

cd tcpdump-4.99.5/

CC=aarch64-himix100-linux-gcc ./configure --prefix=`pwd`/build --host=aarch64-himix100-linux  --without-crypto

make && make install

解释:

CC=aarch64-himix100-linux-gcc 是指定 编译器

--prefix=`pwd`/build 是指定最后的安装路径 ,这里和pcap同级目录,会自动找到pcap依赖,如果你觉得麻烦可以和我一样

--host=aarch64-himix100-linux 是指定编译的目标主机类型

 --without-crypto  是 tcpdump 配置选项中的一个参数,用于在编译时禁用加密功能。当你在编译 tcpdump 时使用这个选项,编译系统不会链接 OpenSSL 库,因此生成的二进制文件将不包含解密 IPsec ESP 数据包的能力。我这里不需要,去除了

最后编译成功如下:

3:使用验证

移植到目标环境中使用即可

改了个名 tcpdump-himix100,方便区分平台编译器 

执行 ./tcpdump-himix100 -i eth0 -w  my.pcap

;