Texan Cowboy
Texan Cowboy

Reputation: 31

make: *** /lib/modules/2.6.32-279.el6.x86_64/build: No such file or directory. Stop

I downloaded the RALINK driver from their web site

untar -xvf rtl*

and then i ran "make" in it. google search suggested "kernel-devel" needed to be installed.

i installed the kernel-devel package but i still get this error

make: *** /lib/modules/2.6.32-279.el6.x86_64/build: No such file or directory.  Stop.

when i check to see if that file exists.. i cd into /lib/modules/2.6.32-279.el6.x86_64/

i believe this error happens right after "make" command tries to execute this command

make ARCH=x86_64 CROSS_COMPILE= -C /lib/modules/2.6.32-279.el6.x86_64/build M=/home/a/Desktop/3/rtl8712_8188_8191_8192SU_usb_linux_v2.6.6.0.20120405  modules

and it's there it is called "build"

so why is it saying no such file or directory ?

Upvotes: 3

Views: 28529

Answers (5)

Lancer.Dalu
Lancer.Dalu

Reputation: 11

Because the link is not with your kernel version.

  1. Delete the wrong link.

    $ rm build`
    
  2. Use $ uname -r to check the kernel version

  3. Build new link with your kernel version.

    $ ln -s ../../../usr/src/kernels/($(uname -r)/ build
    

Done

Upvotes: 0

Nick Dong
Nick Dong

Reputation: 3736

/usr/lib/modules/your-kernel-edition/build is a link file. the link file exists. but the target file might not exists. So It is ok to see the link file, but the folder can not be changed into it (cd).

Similar Example on fedora 29.

lrwxrwxrwx. 1 root root 40 Oct 21 07:38 /usr/lib/modules/4.18.16-300.fc29.x86_64/build -> /usr/src/kernels/4.18.16-300.fc29.x86_64

Just install kernel-devel.

Example.

sudo dnf install kernel-devel-$(uname -r)

Upvotes: 1

Jeff Wang
Jeff Wang

Reputation: 11

Thanks to Nighthawk663.

I have the same problem in ./configure --with-linux=/lib/modules/uname -r/build/. It says "not a file..." too.

Reason: The kernel head files are missing for the current kernel.

How I solved it:

find current kernel: uname -r

yum install kernel-devel-$(uname -r)

you may not find it... just google that version of kernel-devel-... download the rpm file, and do

rpm -i kernel-devel-xxxx.rpm

Then it works for me!

Upvotes: 1

ramgo
ramgo

Reputation: 194

cd /lib/modules/2.6.32-431.el6.x86_64
sudo rm build
sudo ln -s ../../../usr/src/kernels/2.6.32-431.29.2.el6.x86_64/ build

The above commands fixed the issue for me But basically you must be able to use any version of 2.6.32* directory in the last command.

Upvotes: 3

Nighthawk663
Nighthawk663

Reputation: 53

**EDIT**

If your problem is like the one I was having (see below), it seems the kernel development package isn't installed.

Try:

yum install kernel-devel

Original Message

I am having the same problem. But, interestingly, when I ls-l on the parent directory to the "missing directory" (so, ls -l /lib/modules/2.6.32-431.el6.x86_64/) it shows that build is a broken link pointing to /usr/src/kernels/2.6.32-431.el6.x86_64, but /usr/src/kernels/ is empty.

So, I don't know if this is much help, but hopefully it gives someone else a better idea of what's wrong.

[root@xx libreswan-3.7]# ls -l /lib/modules/2.6.32-431.el6.x86_64/
total 3524
lrwxrwxrwx.  1 root root     46 Dec 12 13:42 build -> ../../../usr/src/kernels/2.6.32-431.el6.x86_64
drwxr-xr-x.  2 root root   4096 Nov 21 22:41 extra
drwxr-xr-x. 11 root root   4096 Dec 12 13:42 kernel
-rw-r--r--.  1 root root 589679 Dec 12 13:43 modules.alias
...
-rw-r--r--.  1 root root 851070 Dec 12 13:43 modules.usbmap
lrwxrwxrwx.  1 root root      5 Dec 12 13:42 source -> build
drwxr-xr-x.  2 root root   4096 Nov 21 22:41 updates
drwxr-xr-x.  2 root root   4096 Dec 12 13:42 vdso
drwxr-xr-x.  2 root root   4096 Nov 21 22:41 weak-updates

[root@xx libreswan-3.7]# ls /usr/src/kernels/
[root@xx libreswan-3.7]# 

Notice that the "source" link is also broken because it points to build.

Upvotes: 5

Related Questions