Emerge vmware-modules-238.5 fails: birne ~ # LANG=C emerge -v1 vmware-modules [...] CC [M] /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.o /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c: In function 'HostIF_APICInit': /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c:2749:4: error: implicit declaration of function '__fix_to_virt' [-Werror=implicit-function-declaration] /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c:2749:26: error: 'FIX_APIC_BASE' undeclared (first use in this function) /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c:2749:26: note: each undeclared identifier is reported only once for each function it appears in /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c: In function 'HostIF_APIC_ID': /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.c:2794:26: error: 'FIX_APIC_BASE' undeclared (first use in this function) CC [M] /var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/driverLog.o cc1: some warnings being treated as errors make[3]: *** [/var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only/linux/hostif.o] Error 1 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [_module_/var/tmp/portage/app-emulation/vmware-modules-238.5/work/vmmon-only] Error 2 make[1]: *** [sub-make] Error 2 make[1]: Leaving directory `/usr/src/linux-3.0.4-gentoo-r2' make: *** [vmmon.ko] Error 2 emake failed * ERROR: app-emulation/vmware-modules-238.5 failed (compile phase): * Unable to emake HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= auto-build KERNEL_DIR=/usr/src/linux KBUILD_OUTPUT=/lib/modules/3.0.4-gentoo-r2/build * * Call stack: * ebuild.sh, line 56: Called src_compile * environment, line 3759: Called linux-mod_src_compile * environment, line 2870: Called die * The specific snippet of code: * eval "emake HOSTCC=\"$(tc-getBUILD_CC)\" CROSS_COMPILE=${CHOST}- LDFLAGS=\"$(get_abi_LDFLAGS)\" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}"; * * If you need support, post the output of 'emerge --info =app-emulation/vmware-modules-238.5', * the complete build log and the output of 'emerge -pqv =app-emulation/vmware-modules-238.5'. * The complete build log is located at '/var/tmp/portage/app-emulation/vmware-modules-238.5/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/app-emulation/vmware-modules-238.5/temp/environment'. * S: '/var/tmp/portage/app-emulation/vmware-modules-238.5/work' >>> Failed to emerge app-emulation/vmware-modules-238.5, Log file: >>> '/var/tmp/portage/app-emulation/vmware-modules-238.5/temp/build.log' Reproducible: Always Steps to Reproduce: 1. emerge -v vmware-player Actual Results: Compilation failure. Expected Results: Successful emerge Might be related to Bug 362725 (https://bugs.gentoo.org/362725?id=362725;id=362725) I run Linux 3.0.4-gentoo-r2 birne ~ # gunzip </proc/config.gz | grep -i APIC CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_PCI_IOAPIC=y CONFIG_KVM_APIC_ARCHITECTURE=y The emerge failure also happens with the vmware overlay.
Created attachment 294151 [details] emerge --info
Created attachment 294153 [details] build.log
Created attachment 294157 [details] gunzip </proc/config.gz
Could you try apic.patch? http://overlays.gentoo.org/proj/vmware/browser/trunk/app-emulation/vmware-modules/files/apic.patch
(In reply to comment #4) > Could you try apic.patch? > http://overlays.gentoo.org/proj/vmware/browser/trunk/app-emulation/vmware-modules/files/apic.patch I have update vmware overlay, but which way I have to apply apic.patch ? emerge -av vmware-modules gives the same error.
(In reply to comment #4) > Could you try apic.patch? > http://overlays.gentoo.org/proj/vmware/browser/trunk/app-emulation/vmware-modules/files/apic.patch Tanks, that fixes it for me.
Created attachment 298645 [details, diff] updated apic.patch Since the context in the hostif.c that is relevant to the patch has changed, I finally used this attached (slightly changed) apic.patch.
(In reply to comment #5) > (In reply to comment #4) > > Could you try apic.patch? > > http://overlays.gentoo.org/proj/vmware/browser/trunk/app-emulation/vmware-modules/files/apic.patch > > I have update vmware overlay, but which way I have to apply apic.patch ? > emerge -av vmware-modules gives the same error. You need to create a local portage overlay as explained in http://en.gentoo-wiki.com/wiki/Overlay and copy the app-emulation/vmware-modules/ directory recursively over to your new repo, except for the .ebuild files, where you should only copy the one you need to modify (vmware-modules-238.5.ebuild). Then download the apic.patch that was linked by Yuriy Rusinov and put it in the files/ subdirectory within the vmware-modules directory in your overlay. Then locate the "epatch" commands in the vmware-modules-238.5.ebuild that you copied to your overlay and append "epatch ${FILESDIR}/apic.epatch" to that function. Then remove the Manifest file from your overlay's vmware-modules directory and regenerate it by calling `ebuild *.ebuild manifest` from within that directory. Then you can emerge -v1 vmware-modules and should see it being taken from your overlay instead of the default portage tree. HTH
*** Bug 404089 has been marked as a duplicate of this bug. ***
This should be obsolete by now.