[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Debian]: AW: erfahrung mit vm ware



Quoting Christian Roth (cr@kupenga.de):
> da ihr euch gerade ueber vmware unterhaltet will ich mich doch gleich
> mal dazugesellen und mein Problem loswerden.

das gleiche hatte ich auch mit dem Install-Skript
> 
> Ich bekommen vmware nicht installiert. Ich habe ein SMP System mit
> 2x133er Pentium Prozessoren. Wenn ich das install.pl Skript aufrufe
> erhalte ich die Fehlermeldung, dass vmware fuer Kernel 2.0.36 sei ich
> aber einen 2.2.10er Kernel habe.
> Ja wie jetzt. Heisst das, dass vmware mich zu einem 2.0.36er Kernel
> zwingt. Ich habe auf deren Homepage auch was von 2.2.* gelesen.

Nein!
Hier geht es um das von dem Skript angestossene Kompilieren der 
zwei Kernelmodule vmmon und vmnet. 
Das Skript hat Dir ja eine Fehlermeldung ausgegeben, die vermutlich 
wie bei mir feststellte, dass sich in Deinem System zwei voneinander 
abweichende Dateien namens "version.h" befinden. Eine davon in 
/usr/include/linux/version.h  -- die andere im Pfad des Baumes Deiner 
aktuellen Kernelversion. 
Den Fehler kannst Du durch _vorueberhendes_ Anders-Setzen von drei 
Softlinks umschiffen und die vmware Module erfolgreich kompilieren und 
installieren lassen. 
Das Vorgehen ist im Web-Support von vmware.com klar geschildert. 
Der Vollstaendigkeit halber fuege ich die Datei hier an, in der 
Hoffnung, dass die Liste das toleriert.

Viel Spass mit der wirklich guten Software. 
Auch ich habe den Kauf nicht bereut, wuerde mir allerdings etwas 
bessere Unterstuetzung fuer FreeBSD als Gastsystem wuenschen. 
(X von FreeBSD funkt unter VMware nur als 640x480 in 16 Farben :-/( )

Ciao
Karl-Heinz



Title: Installing and Compiling the VMware for Linux modules vmmon and vmnet
VMware logo
Top Navigation BarCompanyNews and EventsProducts and TechnologySupportVMware StoreSearch VMwareDownload Software
Technical Support
Download the latest VMware Software
VMware For Linux 1.0
VMware for Windows NT
VMware Documentation
Quick Installation
Product Documentation
Technical Notes
Guest OS Installation Instructions
Product Frequently Asked Questions
Glossary
VMware Newsgroups
File an Incident

Installing and Compiling the
VMware for Linux modules vmmon and vmnet

 

Scope

This technical note discusses problems related to the installation of VMware for Linux, specifically with respect to the installation of its two kernel modules.

You should normally have to refer to this technical note in only two circumstances:

  1. You are unable to install VMware successfully, i.e. the "install.pl" script fails.
     
  2. You have changed your linux kernel, either by upgrading your distribution, or by compiling you own kernel. Any kernel upgrade requires you to re-compile vmmon and vmnet. The easiest way to do this is simply to upgrade VMware by running "install.pl" in the distribution directory and answering "Yes" to the question "Would you like to upgrade VMware for Linux".
     

Background

VMware for Linux's installation script (install.pl) uses a two-step process to install both vmmon and vmnet. First, it tries to find a matching pre-compiled module in the vmware-distrib directory. If such a module exists, it will try to load it into the kernel using the /sbin/insmod command.

If no pre-compiled modules exist, or if the pre-compiled module does not load, the second step is to automatically compile the module from its sources, which are included in the distribution.

The second step will use the system header files to compile the module. The success of the second step requires a perfect match between the header files installed on the system and the header files used to previously compile the kernel.

The majority of the installation problems are due to this discrepancy. Fixing this system discrepancy is the easiest way to install VMware.
 

Fixing /usr/include/linux and /usr/include/asm

If you installation fails, the first step is to check that you system include directories /usr/include/linux and /usr/include/asm are soft-links that point to the correct directories within the linux source tree.

On many popular distributions,
  /usr/include/linux is a soft-link to /usr/src/linux/include/linux
  /usr/include/asm
is a soft-link /usr/src/linux/include/asm and
  /usr/src/linux
is a soft-link to /usr/src/linux-<kernel version>

If the links are setup differently, for example, /usr/include/linux does not point within the linux source, a version mismatch is likely. 

We recommend that you change your setup so that the two directories /usr/include/linux and /usr/include/asm are in fact softlinks that point within the linux source tree.

This change is only required to compile the modules as part of VMware's installation process. Once VMware is installed, you may reset your system configuration to its original state if you prefer.
 

Common problems

  1. Script fails because <linux/version.h> is inconsistent
    The script fails with this error message:
    ### Something is wrong with the system include files on
    ### your machine! The file <linux/version.h> is for a
    ### [<ACTUAL>] Linux system but you are running a [<EXPECTING>]
    ### kernel. This will not work for building the VMware device
    ### drivers; you must have include files that match the version
    ### of your operating system.

    In your case, [<ACTUAL>] will be replaced with the kernel version that is specified by <linux/version.h> and [<EXPECTING>] will be replaced with the kernel version that is returned by "uname -r". The C compiler will likely find <linux/version.h> in /usr/include/linux/version.h. On your system, you are also likely to find another version.h file in /usr/src/linux/include/linux/version.h. The latter one should contain the version that corresponds to your kernel.
    This problem is usually fixed by following the guidelines described above in "Fixing /usr/include/linux and /usr/include/asm".
     
  2. Script fails with unresolved symbols
    The script fails with error messages similar to

    [...]
    unresolved symbol __pollwait_Rsmp_0b89dd34
    unresolved symbol free_pages_Rsmp_234535e0
    unresolved symbol misc_deregister_Rsmp_632a685b
    [...]

    The linux build does symbol mangling to guarantee the consistency of configuration options between the kernel and its modules. When the kernel is built, the kernel configuration options are written in to <linux/autoconf.h>, and the kernel mangled symbols into <linux/modversions.h> and <linux/modules/*.ver>

    In this failure mode, vmmon or vmnet refuse to load because of unresolved symbols after. Since they were just built, this again indicates an inconsistency between the system header files installed on you machine and the ones used to build the kernel that you are running.

    First, make sure that your
    /usr/include/linux and /usr/include/asm point to the right place, as discussed above in "Fixing /usr/include/linux and /usr/include/asm". This might solve your problem.

    Often, re-building your kernel using the same configuration will fix the problem. Note that you don't need to re-install the newly built kernel. Just recompiling it will regenerate the
    <linux/autoconf.h> and the <linux/modules/*.ver> files.

    To rebuild your kernel, first find the /usr/src/linux/.config that should correspond to you kernel version. It is often, but not always, already installed in /usr/src/linux/.config.

    If you have a .config file, do the following
        rm /usr/src/linux/include/linux/modules/*.ver
        make oldconfig
        make dep clean zImage

    and try to re-install VMware.

    If you still can't install it because of unresolved symbols, it is likely because of a difference between the configuration options of the kernel that you are running and the one that you have just built.

    If this is the case and you cannot find the matching configuration, installing the newly built kernel will allow you to install VMware. Of course, you'll be running a different kernel now.
     
  3. Script fails because CONFIG_UMISC is not defined

    The script fails with the following message:

    ### You appear to have a [<VERSION>] Linux kernel that was not
    ### built with the CONFIG_UMISC configuration parameter set.
    ### The VMware software will not operate without this facility.
    ### Please update your kernel to include this facility and then
    ### redo the installation procedure.

    /dev/vmmon
    registers itself as a "miscellaneous character device". Your kernel is not configured with this option, and VMware can therefore not be installed.

    If this is the case, you must recompile your linux kernel with that option defined. VMware will not run otherwise.
line
Navigational BannerHomeContactJobslegalSite mapRegisterVMware Store

© 1999 VMware, Inc. All Rights Reserved


Reply to: