linux - 构建自定义小型 TCPDUMP 可执行文件,大小为 100 到 300KB

标签 linux build build-process tcpdump

我需要为我正在处理的嵌入式项目构建一个小型 tcpdump。由于我的嵌入式设备的内存大小有限,我需要在构建它时去除 TCPDUMP 中所有不需要的功能。我的目标是使 tcpdump 可执行文件的大小小于 300KB。使用“strip tcpdump option”并在配置中禁用包选项后,我达到了 750KB。为此,我想删除 tcpdump 的所有协议(protocol)解码功能。我希望 tcpdump 不再具有十六进制转储功能。我有一个必须删除的不需要的协议(protocol)的初始列表如下。

print-802_11.c
print-802_15_4.c
print-ah.c
print-ahcp.c
print-aodv.c
print-aoe.c
print-ap1394.c
print-atalk.c
print-atm.c
print-babel.c
print-bootp.C
print-bt.c
print-calm-fast.c
print-carp.c
print-cdp.c
print-cfm.c
print-chdlc.c
print-cip.c
print-cnfp.c
print-dccp.c
print-decnet.c
print-dtp.c
print-dvmrp.c
print-eap.c
print-egp.c
print-eigrp.c
print-enc.c
print-esp.c
print-fddi.c
print-forces.c
print-ipx.c
print-isakmp.c
print-isoclns.c
print-juniper.c
print-krb.c
print-lane.c
print-m3ua.c
print-sip.c
print-sl.c
print-sll.c
print-sunatm.c
print-zephyr.c
print-usb.c
print-vjc.c
print-vqp.c
print-timed.c
print-tipc.c
print-token.c

我开始从 Makefile.in 中删除这些,并在源代码中手动删除函数调用。但后来我意识到这种方法不可扩展。

有更好的方法吗?以某种方式使用配置选项?

我是新手。所以请解释。

最佳答案

Is there a better way to do this ? Someway by using configure options?

不,没有这样的配置选项。您必须以不可扩展的方式进行。

关于linux - 构建自定义小型 TCPDUMP 可执行文件,大小为 100 到 300KB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35950724/

相关文章:

c++ - 两个随后的 std::chrono::high_resolution_clock::now() 给出了 ~270ns 的差异

web-services - Gradle项目构建失败

android - 从 sdk 23 降级到 22 android

java - 在生产中使用 Less css 框架

IOS : Building Fails

javascript - 如何在 javascript 的 Ant 构建脚本中使用 YUI Compressor

java - 如何在 javac/java 类路径中添加多个 .jar 文件 - 适用于 Debian Linux

Linux read() 延迟

linux - 有没有一种方法可以在不使用 SQL Plus Script Runner 插件的情况下在 Jenkins 中针对 RDS (Oracle) 运行 SQL 查询

build - 配置 Gradle 以将主类和测试类包含到我的 .jar 存档中