I have compiled the vagrant-libvirt plugin following the instructions here: https://github.com/hashicorp/vagrant/issues/7039#issuecomment-488499883
It compiles fine, but at runtime I get the following error:
3: from /opt/vagrant/embedded/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
2: from /home/manu/.vagrant.d/gems/2.6.6/gems/ruby-libvirt-0.7.1/lib/libvirt.rb:11:in `<top (required)>'
1: from /opt/vagrant/embedded/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require'
/opt/vagrant/embedded/lib/ruby/2.6.0/rubygems/core_ext/kernel_require.rb:54:in `require': /usr/lib64/libk5crypto.so.3: undefined symbol: EVP_KDF_ctrl, version OPENSSL_1_1_1b - /home/manu/.vagrant.d/gems/2.6.6/gems/ruby-libvirt-0.7.1/lib/_libvirt.so (LoadError)
However if I inspect /usr/lib64/libk5crypto.so.3
I do have this symbol exported:
$ readelf -Ws /usr/lib64/libk5crypto.so.3 | grep EVP_KDF_ctrl
5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND EVP_KDF_ctrl@OPENSSL_1_1_1b (5)
On the other hand my system (RHEL 8) has openssl 1.1.1c installed:
rpm -qa | grep openssl
openssl-1.1.1c-15.el8.x86_64
openssl-pkcs11-0.4.10-2.el8.x86_64
openssl-libs-1.1.1c-15.el8.x86_64
xmlsec1-openssl-1.2.25-4.el8.x86_64
openssl-devel-1.1.1c-15.el8.x86_64
What should I exactly fix here ? Do I have wrong libraries installed ? Did I set wrong ld flags and include paths ?