Page 1 of 2

WMware VMplayer 2.5.2

Posted: Sat 08 Nov 2008, 22:00
by Wolf Pup

Posted: Mon 10 Nov 2008, 19:01
by jcoder24
You cut the size of the sfs in half by removing usr/lib/vmware/modules/binary/ which are binaries compiled for other distro/kernel combinations.

Posted: Mon 10 Nov 2008, 20:55
by Wolf Pup
jcoder24 wrote:You cut the size of the sfs in half by removing usr/lib/vmware/modules/binary/ which are binaries compiled for other distro/kernel combinations.
Nope, the binaries are still in the sfs file, please check the md5.

Posted: Tue 11 Nov 2008, 00:14
by jcoder24
Sorry, meant to say that you can safely remove those files to save space.

Posted: Mon 17 Nov 2008, 15:00
by jcoder24
This package worked fine under kernel 2.6.25.16 once the modules were recompiled. I've included the script below I used to compile and install the modules.

Code: Select all

#!/bin/sh

SOURCE_DIR="/usr/lib/vmware/modules/source"
VMMOD_DIR="/lib/modules/`uname -r`/misc"
FAILED_MODS=""

cd $SOURCE_DIR

# Compile modules
echo "Compiling modules...."

for x in `ls *tar` 
do 
	# Extract module source
	tar xf $x
	VMMOD="`echo $x | sed s/.tar//`"

	# Change to source dir and compile	
	cd "$VMMOD-only"
	make
	
	# Note any failures & remove source dir
	[ $? -gt 0 ] && FAILED_MODS="$FAILED_MODS $VMMOD "
	cd ..; 
	rm -rf "$VMMOD-only"
done

# Copy copiled modules into place
echo -e "\n\nInstalling modules...."

[ ! -d $VMMOD_DIR ] && mkdir -p $VMMOD_DIR
cd "$VMMOD_DIR"

for x in `ls "$SOURCE_DIR" | grep -e o$`
do
	echo $x
	cp -p "$SOURCE_DIR/$x" .
	ln -s $x "`echo $x | sed s/.o$/.ko/`" 2>/dev/null
	rm  "$SOURCE_DIR/$x" 2>/dev/null
done

# Indicate any errors
[ ! -z "$FAILED_MODS" ] && echo -e "\a\nThe followind module(s) failed to build:\n$FAILED_MODS\n\n"

depmod

Posted: Wed 19 Nov 2008, 14:57
by vtpup
This would be great if I could get it installed in 4.1 -- thanks!

I did try the following:

1.) Downloaded sfs file to to /mnt/home

2.) Set BootManager to load the sfs on bootup

3.) Rebooted

4.) Ran the first stanza of the above script and got the following errors:

Code: Select all

# !/bin/sh
bash: !/bin/sh: event not found
# 
# SOURCE_DIR="/usr/lib/vmware/modules/source"
# VMMOD_DIR="/lib/modules/`uname -r`/misc"
# FAILED_MODS=""
# 
# cd $SOURCE_DIR
bash: cd: /usr/lib/vmware/modules/source: No such file or directory
Any help would be appreciated.

Posted: Wed 19 Nov 2008, 15:05
by jcoder24
Seems like the sfs file wasn't loaded.

Posted: Wed 19 Nov 2008, 22:43
by vtpup
Thanks, jcoder24,:

Double checking the location (/mnt/home) and also verifying the checksum I get:

Code: Select all

 cd /mnt/home
# md5sum vmware_vmplayer-2.5.0_k2.6.21.7.sfs
12373527a9b2ecee2e02e61178aa82b9
vmware_vmplayer-2.5.0_k2.6.21.7.sfs
Then checking BootManager's sfs screen, I have in the right panel:

devx_410.sfs
OpenOffice-3.0.sfs
vmware _vmplayer-2.5.0_k2.6.21.7.sfs


And "Ignore user selection, load all with 410 in the filename" is unchecked. (This is all in place after a cold boot, by the way).


Doing a pfind on "vmware", I get only one hit:

vmware _vmplayer-2.5.0_k2.6.21.7.sfs /initrd/mnt/dev_save/vmware _vmplayer-2.5.0_k2.6.21.7.sfs 93974528 -rw-r--r-- root

no /usr/lib/vmware/modules/source

So I don't know what the problem might be.

Too many shs files loaded? (It does say no MORE than 3 -- but is 3 too many, as well?)

Thanks for your help!

Posted: Thu 20 Nov 2008, 04:51
by vtpup
Seems to be a bug in version 4.10 of Puppy relating to the number of .sfs files allowed (should be 3, but wasn't in fact).

Upgraded to 4.11 and the vmware .sfs loaded properly.

Posted: Thu 20 Nov 2008, 05:49
by vtpup
Now having problems with the script.

After running the script, when clicking on the VMWare player icon in the Utility Menu I get a message from VMWare Kernel Module Updater saying Kernel Headers for 2.6.25.16 were not found and asking for the location.

When I ran the script there were a long list of errors -- a short excerpt follows:

Code: Select all

Compiling modules....
Using standalone build system.
./autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or director  y
.././autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or direc  tory
Dependencies for .././linux/module.c
In file included from .././linux/module.c:26:
.././include/driver-config.h:42:5: error: #error "No Module support in this kern  el.  Please configure with CONFIG_MODULES"
make[1]: *** [module.d] Error 1
make: *** [deps] Error 2
Using standalone build system.
./autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or director  y
.././autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or direc  tory
Dependencies for driver.c
In file included from .././linux/driver.c:20:
.././include/driver-config.h:42:5: error: #error "No Module support in this kern  el.  Please configure with CONFIG_MODULES"
make[1]: *** [driver.d] Error 1
make: *** [deps] Error 2
Using standalone build system.
./autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or director  y
.././autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or direc  tory
Dependencies for driver.c
In file included from .././linux/driver.c:20:
.././include/driver-config.h:42:5: error: #error "No Module support in this kern  el.  Please configure with CONFIG_MODULES"
make[1]: *** [driver.d] Error 1
make: *** [deps] Error 2
Using standalone build system.
geninclude.c:19:28: error: linux/autoconf.h: No such file or directory
In file included from driver.c:19:
driver-config.h:35:28: error: linux/autoconf.h: No such file or directory
driver-config.h:42:5: error: #error "No Module support in this kernel.  Please c  onfigure with CONFIG_MODULES"
In file included from driver.c:24:
compat_module.h:27:26: error: linux/module.h: No such file or directory
driver.c:28:27: error: linux/slab.h: No such file or directory
driver.c:34:23: error: linux/smp.h: No such file or directory
driver.c:35:28: error: linux/smp_lock.h: No such file or directory
driver.c:38:31: error: linux/etherdevice.h: No such file or directory
driver.c:39:22: error: linux/mm.h: No such file or directory
      -- snip --
ppdev.c:684: warning: data definition has no type or storage class
ppdev.c:684: warning: type defaults to 'int' in declaration of 'module_init'
ppdev.c:684: warning: parameter names (without types) in function declaration
ppdev.c:685: warning: data definition has no type or storage class
ppdev.c:685: warning: type defaults to 'int' in declaration of 'module_exit'
ppdev.c:685: warning: parameter names (without types) in function declaration
make: *** [ppuser-stub.o] Error 1
Using standalone build system.
./autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or director  y
.././autoconf/geninclude.c:19:28: error: linux/autoconf.h: No such file or direc  tory
Dependencies for .././linux/af_vsock.c
In file included from .././linux/af_vsock.c:95:
.././include/driver-config.h:42:5: error: #error "No Module support in this kern  el.  Please configure with CONFIG_MODULES"
make[1]: *** [af_vsock.d] Error 1
make: *** [deps] Error 2

Installing modules....
Again, any help would be appreciated. Thanks!

Posted: Thu 20 Nov 2008, 23:16
by jcoder24
you need the kernelsource sfs as well

Posted: Fri 21 Nov 2008, 03:41
by vtpup
Thanks Jcoder, will try that.

For others wanting to do this see the following forum thread:
http://www.murga-linux.com/puppy/viewto ... 78&t=35787

Edit:

The above just deals with headers -- see further posts below, since that wasn't sufficient.

Posted: Fri 21 Nov 2008, 04:30
by vtpup
Well, no luck.

Installed the kernelheaders-409.shs into /mnt/home, ran BootManager and added that sfs to the right panel. Rebooted.

Ran the script and got the same error messages. Ran VMWare Player and got the same can't find Kernel Headers message.

I'm thinking either the .sfs didn't get installed, or it's a bad copy, or it's the wrong kernel headers.

Is there a way of checking whether the kernel headers were actually installed? -- where would they be?

Thanks for your help!

Posted: Fri 21 Nov 2008, 23:41
by jcoder24
You need the full kernelsourcenot just the headers.

Posted: Sat 22 Nov 2008, 02:28
by vtpup
Ahh, I see, thanks, will try it. Thanks for the link, as well.

Posted: Sun 23 Nov 2008, 03:01
by vtpup
It Works!

Well, one stumbling block -- the script went fine, to completion.

But starting up VMWare Player itself errored out, saying that it failed to stop its own process while setting up modules.

Looking at the log, I found that it was looking for the file vmware in /etc/rc.d, and not finding it.

I did a search and found it in /etc/init.d.

Wasn't sure what to do, so tried making a symlink in /etc/rc.d pointing to vmware in /etc/init.d

This worked, and the installation process went to completion, and the standard VMWare Player screen opened up when I clicked on the Menu entry.

I'm not sure if I did the right thing by making the symlink -- please let me know, if it wasn't, or there is a better alternative.

I'm currently loading one of my Win98SE virtual machines onto the laptop, and will try to run it as soon as it's done (takes awhile becausethe file is 2 gigs, and this laptop has USB 1.1 -- using an external drive for the transfer.

I think it will work fine. Will let you know. Thanks to all for making this possible, and for the hand-holding.

Posted: Sun 23 Nov 2008, 11:05
by Aitch
Wolfpup/vtpup

It would sure be useful if you could do this VMplayer.sfs for the 2.6.25.16 kernel

I'm afraid it's beyond me

Aitch :)

Posted: Sun 23 Nov 2008, 13:56
by vtpup
Well Aitch, being new to Puppy, I'm not sure how to make an .sfs, but I will try to learn. If anyone else wants to give it a go, however, be my guest... :D

Posted: Sun 23 Nov 2008, 16:43
by jcoder24
The following code will create a packaged of the newly compiled drivers named vmware-modules-kernelversion.pet eg vmware-modules-2.6.25.16.pet.

Code: Select all

#!/bin/sh 

SOURCE_DIR="/usr/lib/vmware/modules/source" 
VMMOD_DIR="/lib/modules/`uname -r`/misc" 

PKG_DIR="vmware-modules-`uname -r`"
MOD_DIR="$PKG_DIR$VMMOD_DIR"

mkdir -p $MOD_DIR
cd $MOD_DIR

for x in `ls /usr/lib/vmware/modules/source/*.tar | sed 's/.*\///; s/.tar//'`
do 
	cp -vp $VMMOD_DIR/$x.o . 2>/dev/null
	[ -f $VMMOD_DIR/$x.o ] && ln -s $x.o $x.ko
done 
cd "$OLDPWD"
dir2pet $PKG_DIR

Posted: Sun 23 Nov 2008, 23:23
by vtpup
Thanks Jcoder that's really amazing of you to do.

I did run the script, made up a 16x16 bit xpm icon, found the executable and gave it to the script, did all the menu stuff. I accepted all defaults with an ENTER, including the dependencies question. The module successfully built.

To test, I removed the VMWare .sfs from bootmanager, located the new .pet, loaded it. It was successfully installed according to the PetGet manager.

Then I re-booted. The VMWare Player entry was located in the menu. I clicked on it, but the VMWare Player program didn't start, or crashed silently.

EDIT:

I've been trying to see what went wrong. Here are some of the things I've found after trying to create the .pet a couple times more:

The .pet is only about 96K long -- this seems way too small. Doing a pfind for the executable vmplayer turns up nothing. It should have been in /usr/bin -- at least that's where it is in the .sfs installed VMWare Player.

FYI. During the .pet creation dialog it asks for the location of the executable, and I have been using /usr/bin/vmplayer as the answer.

I have not listed any dependencies since I don't know of any. The .pet creation dialog suggests looking in /root/.packages/packages.txt for a list of dependencies, but there is nothing in there for VMWare Player. I looked through that file while the VMWare .sfs. was installed and running.

I don't know how to go any farther with this. Help would be appreciated. Thanks!

2nd EDIT:

Maybe I am not understanding the intended function of the new .pet. I assumed it was the VMWare Player program for kernel 2.6.25.16 in .pet form.

But if it is something else (drivers only were mentioned, I now notice) and not the complete program, then some explanation of how it is to be used would be appreciated.