Linux 如何在Yocto中正确构建MDN?

Linux 如何在Yocto中正确构建MDN?,linux,yocto,mdns,nxp-microcontroller,Linux,Yocto,Mdns,Nxp Microcontroller,有人能帮我设置在Yocto和/或中构建MDN的方法吗 纠正我可能犯的任何其他错误? 我以前成功地构建了MDN,并在Linaro embedded中运行了它 Linux。 这是一篇非常详细的文章,试图在给予足够的东西方面犯错 信息。正如一位回复者在我最近看到的论坛消息中所写: “欢迎来到尤克托。这是你的威士忌和阿维利……” 在Linaro Linux中构建:我从苹果获得了MDN的.tar: 接下来就是:。 我为我的mDNS资料创建了一个基本文件夹/mDNS/,并在那里提取了.tar, 正在创建m

有人能帮我设置在Yocto和/或中构建MDN的方法吗 纠正我可能犯的任何其他错误?
我以前成功地构建了MDN,并在Linaro embedded中运行了它 Linux。
这是一篇非常详细的文章,试图在给予足够的东西方面犯错 信息。正如一位回复者在我最近看到的论坛消息中所写: “欢迎来到尤克托。这是你的威士忌和阿维利……”

在Linaro Linux中构建:我从苹果获得了MDN的.tar:
接下来就是:。
我为我的mDNS资料创建了一个基本文件夹/mDNS/,并在那里提取了.tar, 正在创建mDNSResponder-878.200.35/文件夹。我把cd放进去了。
我可以使用命令makeos=“linux”-C“mDNSPosix”在Linaro中轻松构建它

我在/mDNS/mDNSR-878.200.35/mDNSPosix/build/prod/中得到了8个文件:
40592 libdns_sd.so
55960 libnss\u mdns-0.2.所以
370288 mDNSClientPosix
448608 mdnsd
374616 MDN标识
387904 mDNSNetMonitor
373960 mDNProxyresponderpofex
379768 MDnsresponderpofix
然后,仍然在mDNSResponder-878.200.35/中,我做到了:
使安装os=“linux”-C“mDNSPosix”

除此之外,这个安装启动了一个恶魔运行。它还复制 libdns_sd.so和libnss_mdns-0.2.so to/lib/,它们应该在路径中。
这些行包括在安装输出中:
--------------------------------------------------------------**
正在启动Apple Darwin多播DNS/DNS服务发现守护程序:mdnsd。
/已安装usr/sbin/mdnsd
--------------------------------------------------------------**

对于Yocto,我想我应该将libdns_sd.so的副本添加到中的/lib/文件夹中 我的配方的目的地,这样我可以在运行之前将另一个模块链接到它 make安装,必须在目标上运行。但是如果我建造 Yocto中的另一个模块,我想我应该在我的 tmp/work/dir,而不是D,目的地。我的安装行:
安装-m 0755${S}/mDNSResponder-878.200.35/mDNSPosix/build/prod/libdns_sd.so${D}${base_libdir}
用于将其复制到D中的/lib/中。如何正确地写入要复制的行 它在/lib/under~/Yocto/imx-Yocto-bsp/build-wayland/tmp/work/aarch64-poky-linux/

Yocto低级文件夹不是很重要;我只是觉得我想要一个
我的主目录下的Yocto文件夹,用于保存我的Yocto资料。我创建了imx yocto bsp
遵循i.MX_Yocto_项目用户指南.pdf

首先,我遵循了I.MX_Yocto_项目用户指南.pdf“IMXLXYOCTOUG” 从imx-yocto-L5.4.47_2.2.0下载中,获取我的基本系统 工作。我从:->
下载并解包了下面三行中描述的.zip文件:
更新了L5.4.47_2.2.0_LINUX_文档(版本L5.4.47_2.2.0)
i、 MX L5.4.47_2.2.0 Linux BSP文档。包括发行说明、用户指南。
ZIP 11.6MB 03 2020年11月L5.4.47_2.2.0_LINUX_文档[英文]
我正在为I.MX 8M nano评估板执行此操作。
我上面路径中的build wayland文件夹是我的build文件夹。
我已经做了以下几行来得到它。
~/Yocto/imx Yocto bsp$DISTRO=fsl imx wayland MACHINE=imx8mnddr4evk source imx-setup-release.sh-b build wayland
这样做的一个结果是最终将目录更改为build wayland 文件夹。结果证明,在那个文件夹里呆上一段时间是正确的 i.MX_Yocto_项目用户指南.pdf中的后续步骤,例如 我做的“bitbake imx图像多媒体”命令;我不相信.pdf文件是真的 很清楚

所以我之前在运行Ubuntu18.04.4的Linux主机PC上实现了这一点 “仿生海狸”并将生成的图像闪现到我的i.MX 8M纳米板上。
我在UART输出中看到的一行是:
欢迎使用NXP i.MX发行版5.4-zeus(zeus)
我遵循了以下非常好的教程,还添加了helloworld层作为 它显示并让helloworld在闪烁构建的 来自主机的.wic映像:

首先,这是一个很好的教程,因为它清楚地描述了目录 结构,并可遵循。要小心作者的打字错误 然而,把它放进去。他开始在他的字典中将helloworld.c拼写为helloworld.c 第5步和第6步在第7步中切换到helloworld.c。你必须抓住 当你注意到这个开关时,你就可以修改你工作中的拼写了

我使用他George Calin展示的结构来制作我的mdns层

在我的build文件夹build wayland中,我创建了meta MDN,以便与 meta helloworld应用程序文件夹,是我在教程之后创建的。我曾经 本教程中给出的类似步骤,包括
bitbake层创建层元MDN,因此
bitbake层添加层元MDN以便

这让我以类似的方式完成了教程中的第4步。
这在meta MDN so中创建了以下树(每个级别缩进一个破折号):

conf
-layer.conf
正在复制。MIT
自述文件
食谱示例
-mdns
--文件
---mDNSResponder-878.200.35.tar.gz
--MDnsresponder878.200.35.bb

请注意,后面紧跟缩进程度更高的项是目录

将mDNSResponder-878.200.35.tar.gz放在我从中找到的文件下 然而,这里的信息是关于七年前和背景信息链接 已经腐烂了。
有关更多信息,请访问Yocto Mega手册 .
请参阅“7.3.21.3.基于Makefile的包”

这是我在MDnsresponder878.200.35.bb中为我的 第一次尝试:
----------------------------------------------------------------------
DESCRIPTION=“mDNS组件”
PRIORITY=“optional”
SECTION=“protocols”
LICENSE=“MIT”
LIC_FILES_CHKSUM=“file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf806ecda