在 yocto build (Beaglebone Black) 中添加 tcpdump

Add tcpdump in yocto build (Beaglebone Black)

我想将 tcpdump 添加到 yocto 构建中

我发现我需要将 meta-networking 添加到 bblayers.conf 中。 meta-networkingmeta-openembedded

的一部分

以下是我遵循的步骤:

  1. 下载完成meta-openembeddedgit clone git@github.com:openembedded/meta-openembedded.git
  2. 检查到 jethro 分支并确认 meta-networking/recipes-support/tcpdump/tcpdump_4.7.4.bb 存在
  3. meta-networking 及其依赖包添加到 bblayers.conf

BBLAYERS

/home/linux/work/yocto/poky/meta-openembedded/meta-oe \
/home/linux/work/yocto/poky/meta-openembedded/meta-networking \
/home/linux/work/yocto/poky/meta-openembedded/meta-python \
  1. 触发完整构建并将图像复制到 sdcard。

启动 BBB(Beaglebone black) 后,我仍然看不到 tcpdump 二进制文件。我很确定我错过了什么。我是 yocto 的新手。任何指导都会很有帮助。

您需要将 tcpdump 添加到您的图像配方中。为了进行快速测试,您将以下行添加到 conf/local.conf:

IMAGE_INSTALL_append = " tcpdump"

(注意作业中的前导 space)。 仅添加图层不会为您的图像添加任何内容。

更新: 为了正确地做到这一点,你应该在你自己的图像配方中添加 tcpdumpIMAGE_INSTALL。例如

IMAGE_INSTALL += "tcpdump"

如果您没有自己的图像,可以将 <image-name>.bbappend 文件添加到您自己的图层,使用上面的行。