linux 正在安装ruby gems ruby-libvirt,vagrant-libvirt,fog-libvirt...失败缺少libvirt库

smdncfj3  于 2022-12-03  发布在  Linux
关注(0)|答案(2)|浏览(129)

当尝试安装ruby gems以启用vagrant的libvirt管理时,安装失败并显示未记录的消息it depends to a library which is not currently installed:自由的。
Libvirt正在工作,我可以手动编译vagrant-libvirt,甚至可以使用virsh启动和配置qemu VM。
主机是VMWare主机,但嵌套虚拟化已启用。虚拟化VT-x通过lscpu可见,vmx / svm功能位于/proc/cpuinfo中。

Vagrant failed to install the requested plugin because it depends
on a library which is not currently installed on this system. The
following library is required by the 'vagrant-libvirt' plugin:

  libvirt

Please install the library and then run the command again.

我已经安装了所有的软件包/ gems https://computingforgeeks.com/use-vagrant-with-libvirt-kvm-on-centos/,无法理解ruby是如何与libvirt对话的,使用的库可能会丢失。
用RHEL、Centos 8(阿尔马)、Debian sid都试过了。

pn9klfpd

pn9klfpd1#

在vagrant-libvirt的文档页面中有一个installation guide,如果你还没有的话,你应该先看看。
软件包维护者有时会选择将库分成基础包和开发者包。通常基础包应该满足需求,但在某些情况下,你可能还需要开发者包。在基于Debian的发行版中,你可以找到*-dev,而在基于Fedora的发行版中,你可以找到*-devel包。
顺便说一句,如果你很难找到一个替代的软件包管理器,你应该利用这个网页-pkgs.org

s4n0splo

s4n0splo2#

对于https://GitHub.com/vagrant-libvirt/vagrant-libvirt/issues/1104,问题实际上是未定义库路径。
对于Hashicorp发布的流浪包的这个问题,真正的解决方案是强制库进行流浪:

CONFIGURE_ARGS='with-ldflags=-L/opt/vagrant/embedded/lib with-libvirt-include=/usr/include/libvirt with-libvirt-lib=/usr/lib64' GEM_HOME=~/.vagrant.d/gems GEM_PATH=$GEM_HOME:/opt/vagrant/embedded/gems PATH=/opt/vagrant/embedded/bin:$PATH vagrant plugin install vagrant-libvirt

相关问题