简体   繁体   English

在不使用配方的情况下将包构建为yocto图像(图像)

[英]Building packages to yocto image (image) without using recipes

I am a newbie to yocto. 我是yocto的新手。 Have worked on its basics for few weeks and now I have the task of installing few packages on to the yocto image (poky) and I'm completely stuck and don't know what to do. 已经对其基础进行了几周的研究,现在我的任务是在yocto映像(poky)上安装一些软件包,而我完全陷入了困境,不知道该怎么办。

The procedure I am following is : I have cloned the packages from github on to my host machine and put inside a directory. 我要遵循的过程是:我已将包从github克隆到我的主机上,并放置在目录中。 Now in poky I have deb , apt-get working. 现在,我有了deb,可以开始工作了。 But how do I install these cloned packages . 但是,如何安装这些克隆的软件包。 I do not want to follow the recipe /layers method. 我不想遵循配方/ layers方法。 The packages i want to put is : numpy, tensor flow, pyserial, h5py. 我想放的包是:numpy,张量流,pyserial,h5py。

Technically, you can generate a SDK or eSDK for the image that you use, and with that manually build and deploy to the target. 从技术上讲,您可以为所使用的映像生成一个SDK或eSDK,并通过该SDK或eSDK手动生成并部署到目标。 Yet while his is technically possible, it has a lot of downsides: 然而,尽管他在技术上是可行的,但它有很多缺点:

  • you are working around package management 您正在处理包裹管理
  • what you do is totally unreproductible 你所做的是完全无法复制的
  • you will run into lots and lots of problems to fix manually that using the correct mechanism would spare you from, as it already tackles those properly. 您将遇到很多手动解决的问题,因为使用正确的机制可以正确解决这些问题,因此使用正确的机制将使您免于负担。 Especially when compilation is necessary, there are a lot of pitfalls. 尤其是在需要编译时,有很多陷阱。

You can find the respective documentation here: https://www.yoctoproject.org/docs/2.4.2/mega-manual/mega-manual.html#sdk-using-the-standard-sdk and https://www.yoctoproject.org/docs/2.4.2/mega-manual/mega-manual.html#sdk-extensible 您可以在此处找到相应的文档: https: //www.yoctoproject.org/docs/2.4.2/mega-manual/mega-manual.html#sdk-using-the-standard-sdkhttps:// www。 yoctoproject.org/docs/2.4.2/mega-manual/mega-manual.html#sdk-extensible

So in a nutshell: the real point of Yocto/OpenEmbedded is exactly the recipes/metadata mechanisms that you want to not use. 简而言之:Yocto / OpenEmbedded的真正要点就是您不想使用的配方/元数据机制。 If that is a hard requirement for whatever reason (not just "hey I don't like writing recipes"), then the Yocto Project technology is not a good fit for what you need. 如果无论出于何种原因(不是仅仅“嘿,我不喜欢写食谱”)都很难,那么Yocto Project技术就不能满足您的需求。 If you actually want debian-style package management, why not just use debian? 如果您实际上想要debian风格的软件包管理,为什么不只使用debian? Nothing wrong with that, if it fits your usecase. 如果适合您的用例,这没什么不对的。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM