Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 234834 - app-emulation/open-vm-tools-0.0.20080515.93241: build error with Linux 2.6.26
Summary: app-emulation/open-vm-tools-0.0.20080515.93241: build error with Linux 2.6.26
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal
Assignee: Gentoo VMWare Bug Squashers [disabled]
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-08-15 16:05 UTC by Matt
Modified: 2008-08-21 15:49 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Matt 2008-08-15 16:05:41 UTC
The current open-vm-tools doesn't build, presumably because of changes in the 2.6.26 kernel:

 * Preparing vmsync module
Using 2.6.x kernel build system.
make -C /lib/modules/2.6.26/build SUBDIRS=$PWD SRCROOT=$PWD/. modules
make[1]: Entering directory `/home/mlcreech/kernel/linux-2.6.26'
make[1]: warning: jobserver unavailable: using -j1.  Add `+' to parent make rule.
  CC [M]  /var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.o
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c: In function 'init_module':
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c:682: error: 'proc_root_driver' undeclared (first use in this function)
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c:682: error: (Each undeclared identifier is reported only once
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c:682: error: for each function it appears in.)
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c: In function 'cleanup_module':
/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c:714: error: 'proc_root_driver' undeclared (first use in this function)
make[2]: *** [/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.o] Error 1
make[1]: *** [_module_/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync] Error 2
make[1]: Leaving directory `/home/mlcreech/kernel/linux-2.6.26'
make: *** [vmsync.ko] Error 2
 * ERROR: app-emulation/open-vm-tools-0.0.20080515.93241 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3823:  Called linux-mod_src_compile
 *             environment, line 2988:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                      CC=\"$(get-KERNEL_CC)\"                                          LDFLAGS=\"$(get_abi_LDFLAGS)\"                                          ${BUILD_FIXES}         ${BUILD_PARAMS}                                          ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CC="$(get-KERNEL_CC)" LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CC=x86_64-pc-linux-gnu-gcc LDFLAGS=   auto-build HEADER_DIR=/usr/src/linux/include BUILD_DIR=/lib/modules/2.6.26/build

I also tried the slighly newer 2008.07.01-102166 ebuild from the "vmware" overlay, but it gets the same error.  I compiled the latest open-vm-tools (2008.08.08-109361) by hand, and it builds fine, so someone probably just needs to add an updated ebuild.

Reproducible: Always

Steps to Reproduce:
1. emerge =app-emulation/open-vm-tools-0.0.20080515.93241

Actual Results:  
Build error:

/var/tmp/portage/app-emulation/open-vm-tools-0.0.20080515.93241/work/open-vm-tools-2008.05.15-93241/modules/linux/vmsync/sync.c:682: error: 'proc_root_driver' undeclared (first use in this function)


Expected Results:  
Successful build
Comment 1 Panagiotis Christopoulos (RETIRED) gentoo-dev 2008-08-16 03:11:26 UTC
Please, also attach your emerge --info output, because we may need to see the linux-headers you're using and other infomation.
Comment 2 Mike Auty (RETIRED) gentoo-dev 2008-08-20 20:44:37 UTC
Ok, a new version of open-vm-tools is now available in the vmware overlay.  Please test it and let me know if it still breaks with the 2.6.26 kernel.  Thanks...  5:)
Comment 3 Matt 2008-08-20 22:38:19 UTC
Thanks, the new version builds (well, the manifest seems to be bad, but after re-generating that it builds).  Can't verify whether it works yet, though, since the vmware init script mysteriously bails out.  But that's a separate issue.  :)
Comment 4 Mike Auty (RETIRED) gentoo-dev 2008-08-21 09:21:49 UTC
Hmmm, the init script may be bailing out because it uses modprobe -f to insert the modules (which seems to have broken 2.6.26+ kernels using module versioning etc).  It's a bit odd, it's supposed to force the modules in, but it does it by removing the versioning information, which then makes the kernel throw it out.

Anyway, you can work around this by modprobing (without -f) all the required modules first (pretty much any module you've got starting with a v).  I've also fixed up the manifest.  Could you let me know if the modprobe trick fixes the issue for you?
Comment 5 Matt 2008-08-21 15:49:56 UTC
Yeah, I figured that part out when it left a version-magic error in the log, removing the "-f" option fixed it.  The problem I was having was that apparently the vmware-config.pl script wasn't completing, so the complaint about needing to run it was legit.  It looks like vmblock had triggered an oops when I tried to remove it (I used '-f', so maybe not unexpected), which caused vmware-config.pl to bail early.

Anyway, I rebooted and ran vmware-config.pl again, and now the init script completes, I can run VMWare, and it seems to be back in working order.  Thanks Mike!