This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux:Yocto 在 BeagleBone Black 上构建和部署 tftp 和 BOOTP 客户端

Guru**** 2539500 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/732749/linux-yocto-build-and-deploy-tftp-and-bootp-client-on-beaglebone-black

工具/软件:Linux

您好!

我正在尝试使用 Yocto 构建系统来构建 BOOTP 和 tftp 客户端并将其部署到 Beagle Black (AM335x)上的 Linux rootfs 中。 我在这方面比较新,所以有几个问题。 希望我能在这里得到答案:

问题:

1.使用 Yocto 构建和部署此工具的标准方法是什么?

我假设我可以从 git://git.openembedded.org/meta-openembedded 及其各层获取食谱。 然后使用 image_install 来包含配方名称。 该方法将构建 tftp 和 bootp 客户端并将其部署到 rootfs。

请解释这是否属实或我遗漏的任何内容。

2.推荐使用的 tftp 客户端是什么?

3.建议使用的 BOOTP 客户机是什么? 我似乎没有在 meta-openembedded 和其他地方找到 BOOTP 客户机。 为此、建议使用哪种解决方案?

感谢你的帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Matt、

    标准 SDK FS 具有 TFTP 客户端、作为总线盒构建的一部分、运行良好。 BOOTP 客户机通常由引导 ROM 处理,一旦它传递给 U-Boot、DHCP 和 TFTP 接管,SDK 中就会包含所需的一切。

    关于您的问题:

    [引用用户="Matt Tsai52"]

    1.使用 Yocto 构建和部署此工具的标准方法是什么?

    我假设我可以从 git://git.openembedded.org/meta-openembedded 及其各层获取食谱。 然后使用 image_install 来包含配方名称。 该方法将构建 tftp 和 bootp 客户端并将其部署到 rootfs。

    请解释这是否属实或我遗漏的任何内容。

    [/报价]

    是的、如果您需要添加软件包、这应该可以正常工作。 但是、正如我在上面所说的、您不需要为这些函数添加任何软件包。

    [引用 user="Matt Tsai52"]2. 推荐使用的 tftp 客户端是什么?[/quot]

    母线盒中的那个看起来不错。

    [引用 user="Matt Tsai52"]3. 建议使用的 BOOTP 客户机是什么? 我似乎没有在 meta-openembedded 和其他地方找到 BOOTP 客户机。 为此建议的解决方案是什么?

    这通常由引导 ROM 妥善处理。 标准 DHCP 客户端的工作性能远远超过此水平。

    但愿如此。 这会有所帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ron、

    谢谢你。 busybox 中的 tftp 客户端似乎适合我的需要。

    对于 BOOTP 客户机,当 Linux 开始获取 IP 地址时,我的应用程序需要在指定的服务器和客户机端口号上运行 BOOTP 客户机。 我不确定哪个 BOOTP 客户机能够执行此操作。 或者、总线盒 udhcpc 也可以这样做。 我想知道您或这个论坛上的任何人是否知道这一点?

    感谢你的帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ron、

    我能够在 Linux 上执行 BOOTP。 这解决了问题。 感谢你的帮助!