将 dkms 安装到没有编译器的 Ubuntu 机器上



我试图将dkms安装到没有makegcc的机器上。我计划只向这些目标机器推送二进制文件。

在我的构建机器上,我计划使用dkms来构建dkms启用的模块,然后使用dkms mktarball ... --binaries-only创建tarball用于分发。

我想把这些tarball推到目标机器上,在这些机器上我想要使用dkms ldtarball,所以目标机器确实需要dkms,但是他们不需要 gcc (或)。

    构建(主机)和目标机器运行相同的Ubuntu
  1. 目标上的apt-get install dkms自动引入gcc
  2. 下载dkms.deb (apt-get download dkms)并使用dpkg --install --ignore-depends=gcc ... dkms.deb安装可以工作,但是没有解决依赖关系,因此任何未来的apt-get(例如安装其他包)都失败。
  3. 我可以尝试使用equiv包来创建gccmake的虚拟安装,但这似乎是一个可怕的hack,我宁愿避免。此外,如果我想要实际安装,它可能会产生问题

在dkms README(第3节)中有关于这个的说明,但是没有指导如何完成它。如果您选择不在系统上加载模块源,或者选择不加载编译器……DKMS仍可用于安装模块".

(抱歉,如果标签误导…dkms)

创建一个本地虚拟包,假装安装gcc和任何其他您希望远离系统的深度包。equivs包可以用于此,但它也足够简单,可以手工完成。

非常感谢Darik Horn的精彩(离线)回答。

他建议使用/etc/apt/preferences。D到引脚不需要的包。这个解决方案看起来很有希望,我将进一步探索(如果可能的话,在这里发布结果)。

我找到了另一个解决方案Ubuntu论坛和超级用户看起来很有希望。

脚本执行的步骤可以手动完成,基本上是这样的:

  1. mkdir
  2. dpkg-deb -x dkms…deb
  3. dpkg-deb—control dkms…deb/DEBIAN
  4. 编辑/DEBIAN/control文件依赖
  5. dpkg -b dkms-modified-…deb

相关内容

  • 没有找到相关文章

最新更新