On Mon, Feb 23, 2004 at 01:32:11PM -0500, Clement Taylor <cgtaylor@xxxxxxxxxxx> wrote: > I use the VMWare program on my linux desktop to run windows programs > with no Linux equivalent. Each time I change my kernel version I need to > recompile vmware. It normally works fine but I am having a problem with > my fedora system. When I run vmware-config.pl I get the following error: > The present kernel configuration has modules disabled. > Type 'make config' and enable loadable module support. > Then build a kernel with module support enabled. VMware is a pain sometimes. I'm running VMware 3.2.0 in FC1, but it took a lot of creativity and websearching to get it working. I've got extensive notes on it but they're not Internet-accessible, so I'll summarize here. First of all, you don't need a new kernel (and probably don't want one). You'll need to make sure you have kernel-source for your kernel installed, and both gcc and gcc32. You'll then need to get the vmware-any-any-[NUMBER].tar.gz patch from http://platan.vc.cvut.cz/ftp/pub/vmware/. Untar and run 'runme.pl' as root; it'll replace your vmmon and vmnet source with patched source. When it asks you to run vmware-config.pl, decline. Now edit vmware-config.pl. Look for where it calls "gcc --version" by searching for "--version"; replace that with "-dumpversion". Next, put your kernel config file where vmware looks; copy the file in /usr/src/linux-VERSION/configs/ to the filename /usr/src/linux-VERSION/.config. Now run: CC=gcc32 vmware-config.pl It'll complain about your compiler; tell it to use it anyhow. When prompted for the location of modules, use /usr/src/linux-VERSION/include. It will start to compile things, and then fail in task.c of vmmon-only, because task.c is inexplicably written in C++. Luckily for us none of it is kernelland, so it can be built with gcc 3.3 without any problems. Copy the failed command (starting with 'gcc32') somewhere, you'll need it in a moment. Run 'CC=gcc32 vmware-config.pl' again, answer the questions the same way, and then as soon as the compilation starts, suspend (^Z) it. Change directory to /tmp/vmware-configN (for the highest value of N there, which is the current attempt), and run the command you saved, replacing 'gcc32' with 'gcc'. Once that succeeds, continue the normal compilation ('fg'). vmmon and vmnet should build normally. Unfortunately you're not done yet; vmware took advantage of a particular bug/feature in nice() which has changed, so you need to preload a nice() that works the way vmware expects. Follow the instructions at http://www.angelfire.com/linux/ylai/ to get the libnice that implements it, and to start VMware with it preloaded. I dunno how much help I'll be able to provide if that *doesn't* make things work for you, but either way, let me know how it turns out. Cheers, -Rich -- Rich Lafferty --------------+----------------------------------------------- Ottawa, Ontario, Canada | Save the Pacific Northwest Tree Octopus! http://www.lafferty.ca/ | http://zapatopi.net/treeoctopus.html rich@xxxxxxxxxxx -----------+-----------------------------------------------