【发布时间】:2019-08-11 18:35:22
【问题描述】:
我想知道像 yum 和 apt-get 这样的包管理器适用于 Yocto 系统吗?
另外,有什么方法可以让yum 和/或apt-get 在yocto 上安装包。
【问题讨论】:
-
手册中有一个完整的部分介绍了运行时包管理,概述了您的选择:yoctoproject.org/docs/current/mega-manual/…。你读了吗?您有什么具体问题吗?
我想知道像 yum 和 apt-get 这样的包管理器适用于 Yocto 系统吗?
另外,有什么方法可以让yum 和/或apt-get 在yocto 上安装包。
【问题讨论】:
在大多数情况下没有等价物,因为默认情况下,您在运行的系统上没有任何包管理。一切都在图像创建期间打包和安装。
也就是说,您可以启用包管理IMAGE_FEATURE,但还有更多功能,因为您还必须提供与您的构建相匹配的包源等等。这里有一些非常好的文档:Package Managers in Yocto,但仍然需要大量工作。
如果您的用例绝对要求在运行时管理每个设备的包,或者甚至需要使用特定的存储库,那么您最好选择与 Yocto 不同的分发/构建机制。
【讨论】:
以deb为例
将以下内容添加到 conf/local.conf:
PACKAGE_CLASSES = "package_deb"
PACKAGE_FEED_URIS = "http://some_domain_or_ip:5678"
EXTRA_IMAGE_FEATURES += " package-management "
然后构建镜像。
然后运行映像。在目标系统中,可以查看是否添加了对包管理的支持:
which apt-get
ls -lh /etc/apt/sources.list
您可能还需要设置软件包服务器。然后,您可以像在 debian/ubuntu 中一样安装预编译包:
apt-get update
apt-get install some_package
【讨论】: