在64位13.10中安装Realtek RTL8111E时发生编译错误。“已启用CONFIG_X86_X32,但不支持binutils”


13

我从Realtek网站下载了板载RTL8111E(Mobo MSI B75 Pro3-M)的Linux驱动程序。Realtek驱动程序已于2013年9月23日更新,因此我认为它可以处理64位Ubuntu(在我的情况下为13.10)。它似乎与内核3.xx兼容。

我以root用户身份运行autorun.sh,但出现以下错误:“已启用CONFIG_X86_X32,但不支持binutils”

我没想到会出现此错误,因为我的操作系统是64位。有人知道如何解决这个问题吗?

亲切的问候,

大卫。

Answers:


25

我终于通过此链接找到了原因。

似乎在构建驱动程序时,文件夹名称(当然包含驱动程序)中不应包含空格。用下划线替换空格可解决此问题。我可以那样建造。奇怪...但是有效!


我不敢相信这个评论……我被证明是错误的!……非常感谢,它奏效了!:D
Swordfish90年

谢谢。这只是我遇到的问题。
mbrownnyc

这可行,但是...为什么。
nilatti

2

编译驱动程序涉及内核头文件制作,CONFIG_X86_X32 enabled but no binutils support如果内核源目录属于您root并且您以非特权用户身份运行,则该文件可能会失败。检查您的make输出以查看是否CONFIG_X86_X32 enabled but no binutils support出现在内核源目录中,在这种情况下,请尝试使用构建内核源(或整个驱动程序源)sudo make

另一个常见的原因CONFIG_X86_X32 enabled but no binutils support是David Van Huffel提到的编译目录中的空格,或者chili555提到的binutils没有安装。


这不能为问题提供答案。要批评或要求作者澄清,请在其帖子下方发表评论。- 评论
托马斯

@Thomas它确实提供了问题的答案。驱动程序编译涉及必要的内核头文件编译步骤,CONFIG_X86_X32 enabled but no binutils support如果用户没有正确的权限,则该步骤将失败。答案可能有点简洁,我将对其进行编辑以使其更加明显。
Code Bling

0

它在我的64位系统上为我“创造”了一切,除了关于私钥的注释(可以安全地忽略)以外。您安装了binutils吗?

sudo dpkg -s binutils

如果没有,请安装它:

sudo apt-get install binutils

然后再试一次:

sudo -i
cd /home/<user_name>/r8168-8.037.00/
make clean
make
make install
exit

非常感谢您的帮助,我寄予厚望。不幸的是,它没有用。Binutils已安装。错误“已启用CONFIG_X86_X32,但不支持binutils”。我安装了13.04,认为这可能会有所帮助,但也没有任何改变。还有其他建议吗?
David Van Huffel 2013年

您正在编译完全相同的软件包吗?realtek.com.tw/Downloads/…也就是说,r8168-8.037.00?
chili555

确实,是同一个人。
David Van Huffel 2013年

我可以在某个地方强制执行CONFIG_X86_X32 = n吗?
David Van Huffel 2013年

这是在虚拟机中吗?你在这里检查了吗?translate.google.com/translate?hl=zh-CN&sl=pt&u=http://…参见文章7和8。您正在使用install.sh还是make and make install?
chili555

0

如果binutils已安装,请检查您已克隆(或下载)的本地存储库的路径

如果文件夹中有空格,如new folder,将其重命名为newfolder,然后make再次运行,则不会发生任何错误。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.