Kernel header when trying to install nvidia driver

when I try installing the nvidia drive the ‘hard way’ I get this error:

ERROR: The kernel header file 'usr/src/linux/include/linux/version.h' does not exist.  The most likely reason for this that the kernel source files in '/usr/src/linux' have not been configured

It’s a 64-bit system running Tumbleweed and the driver version is: NVIDIA-Linux-x86_64-275.09.07.run

I have kernel-source and kernel-syms installed as well as the necessary C/C++ stuff

Any ideas why I’m getting this and/or how I might go about fixing it?

1 Like

Hi
There is a ‘Tumbleweed’ specific subforum where this post should reside :wink:

I will temporarily lock and move as soon as our nntp gateway syncs.

NNTP users please wait until I notify this thread has been moved before replying.

Hi
Thread has been moved and reopened.

You’re possibly missing the prerequisite RPMs that allow the “run” file to operate properly: gcc, make, kernel-source

See here: HowTo Install and Maintain Nvidia with Tumbleweed (AKA Install Nvidia the Hard Way)

Make sure you have this installed

linux-glibc-devel

Thanks for replying caf4926 and swerdna … I was asleep at the time

When I install opensuse I always add the patterns Base Development, C/C++ Development and Linux Kernel Development before starting anything else and I’ve triple-checked that everything which normally gets pulled in by those patterns has in fact been installed

I’m as sure as can be without posting screenshots of Yast’s Software Manager for someone else to check that I have all the necessary libraries installed, first thing I did check when I saw the error

The libraries are there but the file version.h is indeed missing, I have forced updates of every development package in those three patterns just in case any of them didn’t fully install properly but it didn’t make any difference

I don’t even know though which particular package the file version.h file nvidia’s installer is complaining about belongs to, tried using the ‘RPM Provides’ checkbox in Software Manager to look for version.h and according to that, nothing provides it

Didn’t expect it to work, but just in case I tried installing a slightly older version of the driver I still had which had previously installed correctly on this machine

I was right … it didn’t work

Please post result of

rpm -qa | grep kernel
rpm -qa linux-glibc-devel
uname -a

Here ya go mate

rpm -qa | grep kernel
kernel-firmware-2.6.38-34.2.noarch
kernel-desktop-devel-2.6.39.1-32.1.x86_64
kernel-syms-2.6.39.1-32.1.x86_64
kernel-desktop-2.6.37.6-0.5.1.x86_64
kernel-source-2.6.39.1-32.1.noarch
kernel-devel-2.6.39.1-32.1.noarch
kernel-xen-devel-2.6.39.1-32.1.x86_64
kernel-default-devel-2.6.39.1-32.1.x86_64
patterns-openSUSE-devel_kernel-11.4-6.9.1.x86_64
rpm -qa linux-glibc-devel
linux-glibc-devel-2.6.36-3.1.noarch

And uname -a returns: 2.6.37.6-0.5-desktop #1 SMP PREEMPT 2011-04-25 21:48:33 +0200 x86_64 x86_64 x86_64 GNU/Linux

You don’t have the kernel form tumbleweed then? Why?

Erm … pass mate

I ran the zypper dup and the kernel I’m using is the one I ended up with

If I try zypper dup --from Tumbleweed to pull in a kernel from Tumbleweed I get these conflicts:

4 Problems:
Problem: nothing provides marble-data = 4.6.3 needed by marble-4.6.3-4.5.i586
Problem: konqueror-plugins-lang-4.3.1-11.14.2.noarch requires konqueror-plugins = 4.3.1, but this requirement cannot be provided
Problem: vmware-guest-kmp-desktop-2011.05.27_k2.6.37.6_0.5-0.3.3.x86_64 requires ksym(desktop:init_timer_key) = 3168f5d, but this requirement cannot be provided
Problem: libtag1-1.7-10.1.x86_64 requires libc.so.6()(64bit), but this requirement cannot be provided

Problem: nothing provides marble-data = 4.6.3 needed by marble-4.6.3-4.5.i586
 Solution 1: Following actions will be done:
  keep obsolete marble-4.6.0-3.5.x86_64
  keep obsolete marble-data-4.6.0-3.1.noarch
 Solution 2: Following actions will be done:
  deinstallation of marble-4.6.0-3.5.x86_64
  deinstallation of digikam-lang-1.9.0-71.21.noarch
 Solution 3: break marble by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c] (c): 2

Problem: konqueror-plugins-lang-4.3.1-11.14.2.noarch requires konqueror-plugins = 4.3.1, but this requirement cannot be provided
 Solution 1: deinstallation of konqueror-plugins-lang-4.3.1-11.14.2.noarch
 Solution 2: keep obsolete konqueror-plugins-4.3.1-11.14.2.x86_64
 Solution 3: break konqueror-plugins-lang by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/3/s/r/c] (c): 2

Problem: vmware-guest-kmp-desktop-2011.05.27_k2.6.37.6_0.5-0.3.3.x86_64 requires ksym(desktop:init_timer_key) = 3168f5d, but this requirement cannot be provided
  uninstallable providers: kernel-desktop-2.6.37.1-1.2.2.i586[repo-oss]
                   kernel-desktop-base-2.6.37.1-1.2.2.i586[repo-oss]
                   kernel-desktop-2.6.37.1-1.2.2.x86_64[repo-oss]
                   kernel-desktop-base-2.6.37.1-1.2.2.x86_64[repo-oss]
                   kernel-desktop-base-2.6.37.6-0.5.1.x86_64[repo-update]
                   kernel-desktop-base-2.6.37.6-0.5.1.i586[repo-update]
 Solution 1: Following actions will be done:
  deinstallation of vmware-guest-kmp-desktop-2011.05.27_k2.6.37.6_0.5-0.3.3.x86_64
  deinstallation of ndiswrapper-kmp-desktop-1.56_k2.6.37.1_1.2-11.3.x86_64
 Solution 2: keep obsolete kernel-desktop-2.6.37.6-0.5.1.x86_64
 Solution 3: install kernel-desktop-base-2.6.37.6-0.5.1.x86_64 from excluded repository
 Solution 4: break vmware-guest-kmp-desktop by ignoring some of its dependencies

Choose from above solutions by number or skip, retry or cancel [1/2/3/4/s/r/c] (c): 

Gotta rush out and take my kid for a haircut appointment so I’ll have a closer look when I get back

Do you need vmware, are you using it?

You seem to have some mixed up architectures (i586) and (x86_64)
You are using a 64 bit install.

So my best guess (as one not using tumbleweed)

keep obsolete marble-4.6.0-3.5.x86_64 keep obsolete marble-data-4.6.0-3.1.noarch

keep obsolete konqueror-plugins-4.3.1-11.14.2.x86_64

deinstallation of vmware-guest-kmp-desktop-2011.05.27_k2.6.37.6_0.5-0.3.3.x86_64 deinstallation of ndiswrapper-kmp-desktop-1.56_k2.6.37.1_1.2-11.3.x86_64

But you may have to be brutal, the darn things take over (kernels I mean).

Just abort and try again if it looks messy, you’ll get the feel of it. Look carefully at what it plans to do. I would work in Software Manager and use the switcher on Tumbleweed.

Fixed that now (I hope)

Installed a newer kernel from the Tumbleweed repo, deleted some other stuff, upgraded yet more stuff, switched even more stuff over to the versions from Tumbleweed, halfway through doing all that I got the nvidia driver to install

For some reason now Akregator keeps saying I don’t have flash even though I can watch web videos … but that’s a whole other story and if I can’t fix it, another thread

It does kinda seem that using the --from Tumbleweed switch on the first ‘run’ may be a less problematic way to do things given the kernel mixups I ended up with when just using zypper dup

Thanks for your input there caf4926, sometimes it just takes one little hint from someone wiser than oneself to get ya on the right track

Happy to offer some advice :smiley: