几天前,我为我的新硬件(Ryzen 7 1800X + XFX RX580 显卡 + Gigabyte GA-AB350-gaming 主板)切换到 Fedora 25,因为 Ubuntu 17.04 无法启动安装介质。除了 4k 视频播放之外,其他都运行良好。所以我尝试安装 amdgpu-pro 驱动程序,但我被困在一些奇怪的依赖项上。
# dnf install amdgpu-pro.x86_64
Last metadata expiration check: 0:17:50 ago on Tue May 9 21:10:51 2017.
Error: nothing provides libudev.so.0()(64bit) needed by xorg-x11-drv-amdgpu-pro-1:1.2.99-414273.el6.x86_64
(try to add '--allowerasing' to command line to replace conflicting packages)
有没有人遇到过同样的问题?我们应该安装哪个包才能获得它libudev.so.0
?我可以看到我有/lib64/libudev.so.1
一个符号链接到的包/lib64/libudev.so.1.6.5
,但是将其链接到libudev.so.0
根本不起作用。
答案1
这就是我在 Fedora 25 上安装amdgpu-pro
驱动程序的方法。请自行承担风险。
我访问了 AMD 网页并下载了amdgpu-driver
REHL 7。在安装驱动程序之前,我必须对我的操作系统做一些更改。
首先我必须安装(Redhat 的 EPEL repo)https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm] 适用于 Fedora 25。
我要做的第二件事是降级xorg
驱动程序,因为amdgpu-driver
似乎不支持较新版本的xorg
。我认为这就是你的问题。你需要降级,xorg
这样你就不会安装比 1.17 更新的版本。我建议你卸载所有xorg
驱动程序,然后安装 Fedora 21 中的驱动程序,这样你就不会破坏任何依赖关系。你也可以尝试使用以下命令的更简单的方法:sudo dnf downgrade --allowerasing --releasever=21 xorg-x11-server-Xorg xorg-x11-server-common
你有可能以这种方式破坏一些依赖关系,但系统仍然可以工作。请自行尝试风险并根据你的知识水平做出决定。
我要做的第三件事也是最后一件事是采用我的显示管理器和桌面环境。 似乎amdgpu-driver
不支持所有可用选项,旧版本也是如此fglrx-driver
。 我不知道所有选项的兼容性。 但在我的计算机上,我运行显示管理器lightdm
和桌面环境LXDE
。 但当然,您可以尝试使用您想要的选项,看看哪些有效。 想要使用LXDE
和lightdm
,您可以尝试以下命令:sudo dnf install lightdm
。 然后您需要激活它:sudo systemctl disable name_of_your_current_display_manager.service
然后sudo systemctl enable lightdm.service
。 要安装,LXDE
只需输入sudo dnf install @lxde-desktop
。
最后,我也没有运行最新的 Linux 内核。我不确定这是否重要,但我运行的是 4.8 版本
最后,重新启动计算机并确保一切正常。按照AMD 网页安装驱动程序。重新启动计算机并希望一切顺利!
答案2
看来 ubuntu 无法从较新的 Gigabyte 主板不匹配的情况启动。(https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1671360) 同样,AMDGPU-PRO 驱动程序无法从 Fedora 25 正确安装,只有开源 AMDGPU 才能正常工作。在这里,我必须安装 Fedora 26 Alpha,并使用开源 AMDGPU,因为我的设置与您几乎相同,但有一个 RX480。
答案3
libudev.so.1.NN 文件应位于 /usr/lib 和 /usr/lib64 中。您可以创建指向 .0 的符号链接,然后无需依赖性检查即可安装:
(例如:sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1.6.2 /usr/lib/libudev.so.0)
rpm -Uvh --nodeps amdgpu-pro.x86_64 。
万一, 这里是已知库的 .rpm 信息。您应该拥有 usr/lib64 中的一个版本。