nothing provides python(abi) = 3.8 needed by VirtualBox-6.1-6.1.16_140961_fedora32-1.x86_64

https://www.if-not-true-then-false.com/2010/install-virtualbox-with-yum-on-fedora-centos-red-hat-rhel/

 

 

1. Install Oracle’s VirtualBox 6.1.16 on Fedora 33

This is a bit different method until Oracle release Fedora 33 repositories. Fedora 32 VirtualBox rpm works with Fedora 33, but unfortunately there is fixed version of python(abi) = 3.8, we have to change this and rebuild rpm package. Here is commands howto do it. I update this guide later using DNF/YUM repos and this should be compatible with it too.

If you try to install original Fedora 32 package, then you will see following error:

Error: 
 Problem: conflicting requests
  - nothing provides python(abi) = 3.8 needed by VirtualBox-6.1-6.1.16_140961_fedora32-1.x86_64
(try to add '--skip-broken' to skip uninstallable packages)

1.1. Change to root User

su -
## OR ##
sudo -i

1.2. Install rpmrebuild Package

dnf install rpmrebuild

1.3. Download VirtualBox-6.1-6.1.16_140961_fedora32-1.x86_64.rpm

cd /tmp

wget http://download.virtualbox.org/virtualbox/rpm/fedora/32/x86_64/VirtualBox-6.1-6.1.16_140961_fedora32-1.x86_64.rpm

1.4. Rebuild VirtualBox rpm with Needed Changes

Following command change

rpmrebuild --change-spec-preamble='sed -e "s/6.1.16_140961_fedora32/6.1.16_140961_fedora33/"' --change-spec-requires='sed -e "s/python(abi) = 3.8/python(abi) >= 3.8/"' --package VirtualBox-6.1-6.1.16_140961_fedora32-1.x86_64.rpm

Now you should have following file: ~/rpmbuild/RPMS/x86_64/VirtualBox-6.1-6.1.16_140961_fedora33-1.x86_64.rpm

1.5. Install Following Dependency Packages

dnf install binutils gcc make patch libgomp glibc-headers glibc-devel kernel-headers kernel-devel dkms qt5-qtx11extras libxkbcommon

1.6. Install VirtualBox Latest Version 6.1 (currently 6.1.16)

dnf install ~/rpmbuild/RPMS/x86_64/VirtualBox-6.1-6.1.16_140961_fedora33-1.x86_64.rpm

Note:
This command create automatically vboxusers group and VirtualBox user must be member of that group.
This command also build needed kernel modules.

You can rebuild kernel modules with following command if needed:

/usr/lib/virtualbox/vboxdrv.sh setup

1.7. Add VirtualBox User(s) to vboxusers Group

Replace user_name with your own user name or some another real user name.

usermod -a -G vboxusers user_name

1.8. Start VirtualBox

Use launcher from menu or simply run VirtualBox as normal user:

VirtualBox
posted @ 2020-12-26 14:16  张同光  阅读(1640)  评论(0编辑  收藏  举报