14

I downloaded the Linux drivers for my onboard RTL8111E (Mobo MSI B75 Pro3-M) from the Realtek site. The Realtek driver has been updated 23/09/2013, so I assume it can handle 64 bit Ubuntu (13.10 in my case). It seems to be compatible with kernel 3.xx.

I run autorun.sh as root but get the following error: “CONFIG_X86_X32 enabled but no binutils support”

I didn't expect this error, as my OS is 64 bit. Does anybody know how to fix this ?

Kind regards,

David.

David Van Huffel
  • 541
  • 1
  • 6
  • 14

4 Answers4

27

I finally found the cause thanks to this link.

It seems that one shouldn't have spaces in the folder names (containing the driver of course) when building the driver. Replacing the spaces with underscores fixed the issue. I could build just like that. Strange... but it worked!

tshepang
  • 1,967
David Van Huffel
  • 541
  • 1
  • 6
  • 14
2

Compiling drivers involves a kernel header make, which can fail with CONFIG_X86_X32 enabled but no binutils support if the kernel source directory belongs to root and you're running as an unprivileged user. Check in your make output to see if CONFIG_X86_X32 enabled but no binutils support appears in the kernel source directory, in which case try building the kernel sources (or your entire driver source) with sudo make.

Another common cause of CONFIG_X86_X32 enabled but no binutils support is spaces in the compilation directory as mentioned by David Van Huffel or binutils not installed as mentioned by chili555.

Codebling
  • 239
  • This does not provide an answer to the question. To critique or request clarification from an author, leave a comment below their post. - From Review – Thomas Dec 27 '18 at 11:27
  • @Thomas It does provide an answer to the question. Driver compilation involves a necessary kernel header compilation step, which will fail with CONFIG_X86_X32 enabled but no binutils support if the user does not have the correct permissions. Answer was maybe a little terse, I'll edit to make that more obvious. – Codebling Dec 27 '18 at 19:54
0

if binutils is installed then check the path to local repo you cloned or downloaded it and if there is any folder with spaces like "new folder" try to make it "newfolder" then run "make" again no error will happen :)

Poode
  • 101
  • 3
0

It 'makes' for me on my 64-bit system without drama except for a notation about private key which may safely be ignored. Do you have binutils installed?

sudo dpkg -s binutils

If not, install it:

sudo apt-get install binutils

Then try again:

sudo -i
cd /home/<user_name>/r8168-8.037.00/
make clean
make
make install
exit
chili555
  • 60,188
  • 1
    Many thanks for your help, I had high hopes. Unfortunately it didn't work. Binutils was already installed. The error “CONFIG_X86_X32 enabled but no binutils support” remains. I installed 13.04, thinking that might help, but that didn't change anything either. Any other suggestions ? – David Van Huffel Oct 30 '13 at 10:02
  • Are you compiling this exact same package? http://www.realtek.com.tw/Downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false That is, r8168-8.037.00? – chili555 Oct 30 '13 at 11:41
  • Indeed, that same one. – David Van Huffel Oct 30 '13 at 11:56
  • Can I enforce CONFIG_X86_X32=n somewhere ? – David Van Huffel Oct 30 '13 at 12:04
  • Is this in a virtual machine? Did you check here? http://translate.google.com/translate?hl=en&sl=pt&u=http://www.vivaolinux.com.br/topico/Comandos/Instalar-manualmente-driver-de-rede&prev=/search%3Fq%3D%25E2%2580%259CCONFIG_X86_X32%2Benabled%2Bbut%2Bno%2Bbinutils%2Bsupport%25E2%2580%259D%2BIOMMU%26safe%3Doff%26client%3Dubuntu%26channel%3Dfs%26biw%3D1013%26bih%3D566 See posts #7 and 8. Are you using install.sh or make and make install? – chili555 Oct 30 '13 at 13:15
  • It is not a virtual machine... and it is another brand of motherboard (Asrock B75 Pro3-M), the IOMMU setting is not accessible in my BIOS. I'm using autorun.sh, but have tried make clean install as well with the same effect. – David Van Huffel Oct 30 '13 at 13:41
  • I believe the error comes about in linux-headers, not the r8168 file itself. Please see /usr/src/linux-headers-3.11.0-12/arch/x86/Makefile about lines 102 to 108. I assume, if we modified this, we'd need to recompile the kernel!!! Of course, the mystery remains why it fails on your machine and my 13.10 x86_64 machine succeeds. I assume you are fully updated and have installed build-essential, correct? – chili555 Oct 30 '13 at 14:48
  • build-essential was not installed. I just installed it, perhaps this is not sufficient (I still receive the error). – David Van Huffel Oct 30 '13 at 18:29
  • Frankly, I am out of suggestions. Sorry. – chili555 Oct 31 '13 at 12:31
  • The solution is listed below: I had to remove the spaces from the folder names in which the sourcecode is located. Strange error compared to the solution, isn't it ? Many thanks for the help though, really appreciate it ! :-) – David Van Huffel Oct 31 '13 at 14:07