海思 tcpdump 移植开发详解
前言
本章内容将讲解,如何在海思平台基于静态库交叉编译、移植 tcpdump 网络抓包工具。关于该工具如何使用请参考《Tcpdump网络抓包工具使用教程》。
一、开发环境
SS626V100 交叉工具链的安装流程,可以参考 《SS626V100_SDK_V2.0.1.0 安装编译 osdrv 问题汇总》 。
- windows10 电脑 + 虚拟机15 Pro + Ubuntu18.0.4
- 芯片型号: SS626V100
二、tcpdump 源码下载
由于 tcpdump 依赖 libpcap,所以这两份源码都需要下载。以下示例将使用目前最新的版本 tcpdump-4.99.4.tar.gz 和 libpcap-1.10.4.tar.gz
tcpdump 官方地址:https://www.tcpdump.org
tcpdump 源码地址:https://github.com/the-tcpdump-group/tcpdump
libcap 源码地址:https://github.com/the-tcpdump-group/libpcap
三、交叉编译 libpcap
1.创建一个 libpcap 编译结果的安装目录(编译后的 libpcap 头文件和库将存储在这里)
cd /my_work/tools/tcpdump/ #这个路径大家要根据自己的实际情况修改
mkdir install
2.为了防止编译过程产生的临时文件污染源码,所以先创建一个 build 目录,再编译 libpcap 源码
tar zxf libpcap-libpcap-1.10.4.tar.gz
cd libpcap-libpcap-1.10.4
mkdir build
cd build
3.清空目录,执行上层的 configure,指定编译器和编译结果的安装目录,并要求生成静态库
make clean
../configure --host=aarch64-mix410-linux --with-pcap=linux --prefix=/my_work/tools/tcpdump/install --disable-shared
4.编译安装
make
make install
四、交叉编译 tcpdump
1.同理,为了防止编译过程产生的临时文件污染源码,所以先创建一个 build 目录,再编译 tcpdump 源码
tar zxf tcpdump-tcpdump-4.99.4.tar.gz
cd tcpdump-tcpdump-4.99.4
mkdir build
cd build
2.清空目录,执行上层的 configure,指定编译器及依赖的 libpcap 头文件、库文件路径,并且要求不需要加密功能,生成 makefile
make clean
../configure --host=aarch64-mix410-linux --without-crypto CFLAGS="-I/my_work/tools/tcpdump/install/include" LDFLAGS=-L/my_work/tools/tcpdump/install/lib LIBS=-lpcap
3.编译
make
执行成功后,tcpdump-tcpdump-4.99.4/build 目录下将生成 tcpdump 工具。
五、tcpdump 移植到板子运行
由于只生成静态库,所以不需要再把 libpcap 生成的(动态)库移植到板子,而是直接移植 tcpdump 工具到板子运行即可。在板子上授权并查看工具版本:
chmod +x tcpdump
./tcpdump -h
正常运行的版本信息如下:
tcpdump version 4.99.4
libpcap version 1.10.4 (with TPACKET_V3)
Usage: tcpdump [-AbdDefhHIJKlLnNOpqStuUvxX#] [ -B size ] [ -c count ] [--count]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ --immediate-mode ] [ -j tstamptype ]
[ -M secret ] [ --number ] [ --print ] [ -Q in|out|inout ]
[ -r file ] [ -s snaplen ] [ -T type ] [ --version ]
[ -V file ] [ -w file ] [ -W filecount ] [ -y datalinktype ]
[ --time-stamp-precision precision ] [ --micro ] [ --nano ]
[ -z postrotate-command ] [ -Z user ] [ expression ]
- 分享
- 举报
-
浏览量:1044次2024-06-06 09:47:33
-
浏览量:5562次2021-05-31 17:08:23
-
浏览量:505次2024-01-15 14:55:43
-
浏览量:3030次2018-09-04 15:41:09
-
浏览量:716次2024-02-23 16:58:46
-
浏览量:5762次2020-08-03 18:36:13
-
浏览量:3369次2020-04-21 20:28:40
-
浏览量:2134次2020-04-21 20:27:00
-
2024-01-11 15:44:19
-
浏览量:937次2023-09-01 13:29:58
-
浏览量:1647次2023-10-12 16:48:04
-
浏览量:6537次2021-09-02 16:11:45
-
浏览量:7259次2021-03-18 08:54:25
-
浏览量:4257次2020-08-10 09:16:13
-
浏览量:4228次2019-12-16 13:54:11
-
浏览量:5044次2021-05-31 17:00:35
-
浏览量:7027次2020-08-27 10:20:57
-
浏览量:3522次2020-08-29 16:50:56
-
浏览量:2133次2018-06-27 17:06:49
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
thatk
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明