Why doesn't VMWare compile the modules in opensuse 11 ???

Hi,

I try to install VMWare worksation 6.0.4 on opensuse 11 but whatever I try, this is always the same result


Making sure services for VMware Workstation are stopped.

Stopping VMware services:
   Virtual machine monitor                                             done

Configuring fallback GTK+ 2.4 libraries.

In which directory do you want to install the theme icons?
[/usr/share/icons]

What directory contains your desktop menu entry files? These files have a
.desktop file extension. [/usr/share/applications]

In which directory do you want to install the application's icon?
[/usr/share/pixmaps]

Trying to find a suitable vmmon module for your running kernel.

None of the pre-built vmmon modules for VMware Workstation is suitable for your
running kernel.  Do you want this program to try to build the vmmon module for
your system (you need to have a C compiler installed on your system)? [yes]

Using compiler "/usr/bin/gcc". Use environment variable CC to override.

Your kernel was built with "gcc" version "4.3.1", while you are trying to use
"/usr/bin/gcc" version "4.3". This configuration is not recommended and VMware
Workstation may crash if you'll continue. Please try to use exactly same
compiler as one used for building your kernel. Do you want to go with compiler
"/usr/bin/gcc" version "4.3" anyway? [no] yes

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include]

The path "/usr/src/linux/include" is a kernel header file directory, but it
does not contain the file "linux/version.h" as expected.  This can happen if
the kernel has never been built, or if you have invoked the "make mrproper"
command in your kernel directory.  In any case, you may want to rebuild your
kernel.

What is the location of the directory of C header files that match your running
kernel? [/usr/src/linux/include] 

The required packages are installed as required


nfs-kernel-server-1.1.2-8.1
kernel-pae-2.6.25.11-0.1
linux-kernel-headers-2.6.25-8.1
kernel-default-2.6.25.11-0.1
kernel-source-2.6.25.5-1.1

So, if they are installed, then where are my headers ??

Following the next tutorial it should all work fine : Installing VMWare Workstation 6.0.4 on openSUSE 11.0 - BkWiki

But not in my case.

Tried the any-any-update patch but that is not really necessary for this version and it didn’t do any good.

Tried to search on this forum and on google but the answer remains a secret.

Does this ring a bell to someone who can tell me how to get vmware compile my modules ?

Thanks.

You have 2.6.25.11-0.1 kernel but 2.6.25.5-1.1 kernel sources.

Either grab:
http://download.opensuse.org/update/11.0/rpm/i586/kernel-source-2.6.25.11-0.1.i586.rpm

or run zypper up -t package (and watch that it upgrades the kernel-source to the same version as the kernel itself)

I suggest to recompile the kernel (missing version.h suggests this). It is not necessary to install a new kernel. In a console as root perform
cd /usr/src/linux
make oldconfig
make
This solved the same problem at the times of 9.3 when i installed vmware with the same warnings

Just install the package “kernel-source” from YaST and that’s all, it installs the correct headers for your current kernel.
In SuSE the vmware installation is not a big deal, the packages i install before installing vmware are (in a clean installation of suse): gcc/g++, make , kernel-sources

Under no circumstance should he compile a new kernel - the only thing he’s currently missing is matching kernel sources to his running kernel which would indicate he hasn’t updated his system completely (or the updater applet has failed partially).

Gnome Desktop 11.0: VMware Installation

That’s the tutorial I used for installing VMware, and came across the same problem you are facing now. The solution was to download and install the kernel source files for your current kernel. Then, retry compiling WMware, using the default location provided above. If that fails, open a new terminal window and enter the command uname -r to find the name of the current kernel version. Go back to the compiling window (the terminal window that is compiling VMware) and try the following location…

/lib/modules/<kernel-name>/build/include

…replacing <kernel-name> with the name of your kernel, found in the output of the uname -r command.

For example: if your kernel is “2.6.25.11-0.1-pae”, then location would be…

/lib/modules/2.6.25.11-0.1-pae/build/include

That should work. If not, please tell us, so we can try something else.

Hope that helps! :slight_smile:

Ouch… shame on me for not seeing that :o
Totally confused.

That was indeed the problem. I downloaded the source and installed it with Yast. All is ok now and the modules are compiled.

:smiley: Thanks Chrysantine, you saved me a lot of trouble.

What I find odd is the reason why this new kernel got installed on my system while I didn’t do any updates nor is there any automatic update configured on my system.

Maybe that is also the reason while all of a sudden I had two option in the Grub loader, one PAE and one non PAE kernel while I had only one default option right after the installation of opensuse.

Now I get it. Thanks !!

Even the installer says that the problem could be that the kernel has never been rebuilt. It is a version mismatch i agree but recompiling fixes this complain. Anyway it did for me.

The “pae” version of the kernel stands for “Physical Address Extension.” What that means, is that the kernel allows for more RAM, usually around 4GB+, rather than the default kernel. I’ve been using it, although I don’t have 4GB or more RAM, but supposedly, after installing the Nvidia driver, some systems will have “*-pae” put on the system. I’m not totally sure why, though.

:slight_smile:

That is indeed what I installed, the NVidia drivers, and since then I have this PAE and default entry in the bootloader.

In know what PAE is, thanks for the clarification, but it was not clear to me why I got this extra grub entry without doing a kernel update, so this thing did it himself without me knowing it :eek:

Sorry, didn’t mean to talk down or anything. Just wanted to explain it in case anyone read the post.

From what I’ve heard, that’s the package that does it.

Glad you got it fixed, though. :slight_smile: