The machine in question has been clean-bootstrapped with gcc-3.1 using the stage1-1.3-gcc3.1 build tarball. The following are the version numbers of other important components:- gcc-3.1-r5 glibc-2.2.5-r2 binutils-2.12.90.0.7 vmware-workstation-3.1.1-1790 gentoo-sources-2.4.19-r5 I ran vmware-config.pl after emerging vmware-workstation and the following and set everything up. On running vmware, the error I get is this:- /opt/vmware/bin/vmware: relocation error: /opt/vmware/bin/vmware: undefined symbol: __udivdi3 On running vmware-config.pl too, there are some pretty nasty warnings. The entire output is reproduced below:- ******************************************************************************* [root@thunderbird : vmware-workstation]$ /opt/vmware/bin/vmware-config.pl Making sure VMware Workstation's services are stopped. Stopping VMware services: Virtual machine monitor done Bridged networking on /dev/vmnet0 done DHCP server on /dev/vmnet8 done NAT networking on /dev/vmnet8 done Host-only networking on /dev/vmnet8 done Virtual ethernet done Trying to find a suitable vmmon module for your running kernel. None of VMware Workstation's pre-built vmmon modules is suitable for your running kernel. Do you want this script to try to build the vmmon module for your system (you need to have a C compiler installed on your system)? [yes] Argument "gcc (GCC) 3" isn't numeric in numeric ge (>=) at /opt/vmware/bin/vmware-config.pl line 1476, <STDIN> line 1. What is the location of the directory of C header files that match your running kernel? [/lib/modules/2.4.19-gentoo-r5/build/include] Extracting the sources of the vmmon module. Building the vmmon module. /bin/sh: -c: line 1: syntax error near unexpected token `(G' /bin/sh: -c: line 1: `if echo gcc (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | grep -q '^3\.0'; then echo yes; else echo no; fi' make: Entering directory `/tmp/vmware-config0/vmmon-only' /bin/sh: -c: line 1: syntax error near unexpected token `(G' /bin/sh: -c: line 1: `if echo gcc (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | grep -q '^3\.0'; then echo yes; else echo no; fi' make[1]: Entering directory `/tmp/vmware-config0/vmmon-only' /bin/sh: -c: line 1: syntax error near unexpected token `(G' /bin/sh: -c: line 1: `if echo gcc (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | grep -q '^3\.0'; then echo yes; else echo no; fi' make[2]: Entering directory `/tmp/vmware-config0/vmmon-only/driver-2.4.19-gentoo-r5' make[2]: Leaving directory `/tmp/vmware-config0/vmmon-only/driver-2.4.19-gentoo-r5' /bin/sh: -c: line 1: syntax error near unexpected token `(G' /bin/sh: -c: line 1: `if echo gcc (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | grep -q '^3\.0'; then echo yes; else echo no; fi' make[2]: Entering directory `/tmp/vmware-config0/vmmon-only/driver-2.4.19-gentoo-r5' `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions make[2]: Leaving directory `/tmp/vmware-config0/vmmon-only/driver-2.4.19-gentoo-r5' make[1]: Leaving directory `/tmp/vmware-config0/vmmon-only' make: Leaving directory `/tmp/vmware-config0/vmmon-only' The module loads perfectly in the running kernel. Trying to find a suitable vmnet module for your running kernel. None of VMware Workstation's pre-built vmnet modules is suitable for your running kernel. Do you want this script to try to build the vmnet module for your system (you need to have a C compiler installed on your system)? [yes] Extracting the sources of the vmnet module. Building the vmnet module. /bin/sh: -c: line 1: syntax error near unexpected token `(G' /bin/sh: -c: line 1: `if echo gcc (GCC) 3.1 Copyright (C) 2002 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. | grep -q '^3\.0'; then echo yes; else echo no; fi' make: Entering directory `/tmp/vmware-config0/vmnet-only' `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions In file included from driver.c:51: vmnetInt.h:85:1: warning: "major" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from driver.c:22: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:81:1: warning: this is the location of the previous definition In file included from driver.c:51: vmnetInt.h:86:1: warning: "minor" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from driver.c:22: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:82:1: warning: this is the location of the previous definition `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions In file included from userif.c:50: vmnetInt.h:85:1: warning: "major" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from userif.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:81:1: warning: this is the location of the previous definition In file included from userif.c:50: vmnetInt.h:86:1: warning: "minor" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from userif.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:82:1: warning: this is the location of the previous definition `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions In file included from netif.c:49: vmnetInt.h:85:1: warning: "major" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from netif.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:81:1: warning: this is the location of the previous definition In file included from netif.c:49: vmnetInt.h:86:1: warning: "minor" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from netif.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:82:1: warning: this is the location of the previous definition `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions In file included from bridge.c:46: vmnetInt.h:85:1: warning: "major" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from bridge.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:81:1: warning: this is the location of the previous definition In file included from bridge.c:46: vmnetInt.h:86:1: warning: "minor" redefined In file included from /lib/modules/2.4.19-gentoo-r5/build/include/linux/fs.h:16, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/capability.h:17, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/binfmts.h:6, from /lib/modules/2.4.19-gentoo-r5/build/include/linux/sched.h:10, from bridge.c:21: /lib/modules/2.4.19-gentoo-r5/build/include/linux/kdev_t.h:82:1: warning: this is the location of the previous definition `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops cc1: warning: -malign-jumps is obsolete, use -falign-jumps cc1: warning: -malign-functions is obsolete, use -falign-functions make: Leaving directory `/tmp/vmware-config0/vmnet-only' The module loads perfectly in the running kernel. You have already setup networking. You have already setup networking. Would you like to skip networking setup and keep your old settings as they are? (yes/no) [yes] Do you want this script to automatically configure your system to allow your Virtual Machines to access the host's filesystem? (yes/no/help) [no] no Starting VMware services: Virtual machine monitor done Virtual ethernet done Bridged networking on /dev/vmnet0 done Host-only networking on /dev/vmnet8 (background) done NAT networking on /dev/vmnet8 done The configuration of VMware Workstation 3.1.1 build-1790 for Linux for this running kernel completed successfully. You can now run VMware Workstation by invoking the following command: "/opt/vmware/bin/vmware". Enjoy, --the VMware team ******************************************************************************* While the latter may not cause too many problems, it can definitely be looked into as a minor bug. Regards, Prashanth Aditya Susarla
The fix for the script's first problem is a quick change of '--version' to '- dumpversion' These are kinda silly... And just need a touchup too: `-m486' is deprecated. Use `-march=i486' or `-mcpu=i486' instead. cc1: warning: -malign-loops is obsolete, use -falign-loops
not sure if this is still an issue
the
are you running grsec in your kernel ? are you still running gcc3.1 ? the script is still bj0rked in the sense it doenst handle many things the way it should
grsecurity was running back then. Now I don't run grsec any more and vmware works. The problem could have been specifically with gcc-3.1 as well. Right now, I am on a 1.4_rc1 profile with gcc-3.2-r1 and there's no problem.
yeah, grsec causes relocation errors with a lot of applications if you dont setup grsec properly ill just change this bug to 'fix up the vmware script'
*** Bug 8005 has been marked as a duplicate of this bug. ***
guys try out 3.2.0.2230-r1 ... works great over here :) http://cvs.gentoo.org/cgi-bin/viewcvs.cgi/gentoo-x86/app-emulation/vmware-workstation/files/3.2.0.2230-r1/vmware-config.pl-gcc-generalized.patch?rev=1.1&content-type=text/vnd.viewcvs-markup