When trying to emerge ati-drivers (checked with versions 8.582 and 8.552), build fails. Reproducible: Always Steps to Reproduce: 1. emerge ati-drivers Actual Results: build.log: [32;01m*[0m Determining the location of the kernel source code [32;01m*[0m Found kernel source directory: [32;01m*[0m /usr/src/linux [32;01m*[0m Found kernel object directory: [32;01m*[0m /lib/modules/2.6.27-gentoo-r8/build [32;01m*[0m Found sources for kernel version: [32;01m*[0m 2.6.27-gentoo-r8 >>> Unpacking source... Warning: target directory exists /var/tmp/portage/x11-drivers/ati-drivers-8.582/work Verifying archive integrity... All good. Uncompressing ATI Proprietary Linux Driver-8.582......................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... [32;01m*[0m Applying ati-drivers-xen-8.552.patch ... [A[72C [34;01m[ [32;01mok[34;01m ][0m [32;01m*[0m Applying ati-powermode-opt-path-2.patch ... [A[72C [34;01m[ [32;01mok[34;01m ][0m [32;01m*[0m Converting 2.6.x/Makefile to use M= instead of SUBDIRS= ... [A[72C [34;01m[ [32;01mok[34;01m ][0m >>> Unpacking ./../common/usr/src/ati/fglrx_sample_source.tgz to /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/extra >>> Source unpacked in /var/tmp/portage/x11-drivers/ati-drivers-8.582/work >>> Compiling source in /var/tmp/portage/x11-drivers/ati-drivers-8.582/work ... [32;01m*[0m Preparing fglrx module make -j3 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= GCC_VER_MAJ=4 KVER=2.6.27-gentoo-r8 KDIR=/usr/src/linux kmod_build make -C /usr/src/linux M=/var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x modules make[1]: Entering directory `/usr/src/linux-2.6.27-gentoo-r8' CC [M] /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o CC [M] /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.o CC [M] /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.o In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from include/linux/device.h:22, from include/linux/pci.h:53, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.c:35: include/linux/mmzone.h:18:26: error: linux/bounds.h: No such file or directory include/linux/mmzone.h:197:5: warning: "MAX_NR_ZONES" is not defined In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from include/linux/device.h:22, from include/linux/pci.h:53, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.c:35: include/linux/mmzone.h:218: error: 'MAX_NR_ZONES' undeclared here (not in a function) In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:97: include/linux/mmzone.h:18:26: error: linux/bounds.h: No such file or directory include/linux/mmzone.h:197:5: warning: "MAX_NR_ZONES" is not defined In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:97: include/linux/mmzone.h:218: error: 'MAX_NR_ZONES' undeclared here (not in a function) In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from include/acpi/platform/aclinux.h:54, from include/acpi/platform/acenv.h:140, from include/acpi/acpi.h:54, from include/linux/acpi.h:39, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.c:19: include/linux/mmzone.h:18:26: error: linux/bounds.h: No such file or directory include/linux/mmzone.h:197:5: warning: "MAX_NR_ZONES" is not defined In file included from include/linux/gfp.h:4, from include/linux/kmod.h:22, from include/linux/module.h:13, from include/acpi/platform/aclinux.h:54, from include/acpi/platform/acenv.h:140, from include/acpi/acpi.h:54, from include/linux/acpi.h:39, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.c:19: include/linux/mmzone.h:218: error: 'MAX_NR_ZONES' undeclared here (not in a function) In file included from include/asm/pci.h:4, from include/linux/pci.h:989, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.c:35: include/linux/mm.h:437:63: warning: "NR_PAGEFLAGS" is not defined include/linux/mm.h:485:62: warning: "NR_PAGEFLAGS" is not defined make[2]: *** [/var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_acpi.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from include/asm/pci.h:4, from include/linux/pci.h:989, from /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:104: include/linux/mm.h:437:63: warning: "NR_PAGEFLAGS" is not defined include/linux/mm.h:485:62: warning: "NR_PAGEFLAGS" is not defined make[2]: *** [/var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/kcl_agp.o] Error 1 /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function 'KCL_MEM_VM_GetRegionPhysAddrStr': /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3229: warning: return makes pointer from integer without a cast /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3230: warning: return makes pointer from integer without a cast /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3231: warning: return makes pointer from integer without a cast /var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3233: warning: return makes pointer from integer without a cast make[2]: *** [/var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o] Error 1 make[1]: *** [_module_/var/tmp/portage/x11-drivers/ati-drivers-8.582/work/common/lib/modules/fglrx/build_mod/2.6.x] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.27-gentoo-r8' make: *** [kmod_build] Error 2 [31;01m*[0m [31;01m*[0m ERROR: x11-drivers/ati-drivers-8.582 failed. [31;01m*[0m Call stack: [31;01m*[0m ebuild.sh, line 49: Called src_compile [31;01m*[0m environment, line 3265: Called linux-mod_src_compile [31;01m*[0m environment, line 2453: Called die [31;01m*[0m The specific snippet of code: [31;01m*[0m 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}"; [31;01m*[0m The die message: [31;01m*[0m Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= GCC_VER_MAJ=4 KVER=2.6.27-gentoo-r8 KDIR=/usr/src/linux kmod_build [31;01m*[0m [31;01m*[0m If you need support, post the topmost build error, and the call stack if relevant. [31;01m*[0m A complete build log is located at '/var/tmp/portage/x11-drivers/ati-drivers-8.582/temp/build.log'. [31;01m*[0m The ebuild environment file is located at '/var/tmp/portage/x11-drivers/ati-drivers-8.582/temp/environment'. [31;01m*[0m Expected Results: successful compile
Please post your `emerge --info' too.
can confirm this * ati-drivers-8.5993 * kernel 2.6.28-r5 an include files "include/linux/bounds.h", which is looked for seems to be missing on recent kernels I'll attach build log and emerge --info
Created attachment 192443 [details] emerge --info output
Created attachment 192446 [details] build log
Hi, (In reply to comment #2) > can confirm this > * ati-drivers-8.5993 > * kernel 2.6.28-r5 > > an include files "include/linux/bounds.h", which is looked for seems to be > missing on recent kernels I hope someone is monitoring this bug report.... This problem also shows up when emerging app-emulation/virtualbox-ose-2.2.4, whereas app-emulation/virtualbox-ose-2.2.2 emerged for me without error. I agree that this seems to be a problem with the kernels. mmzone.h, for example, is available in all the sys-kernel/gentoo-sources versions I've got installed, and it tries to #include <linux/bounds.h>, but bounds.h is only available in dev-libs/klibc (under another include tree). I'm at a loss as to why bounds.h wouldn't be a part of the kernel tree, or why packages have only recently started including, e.g., mmzone.h from the kernel tree which shows up the missing bounds.h. I'm no kernel expert. I simply patched the problem up for myself via a temporary symlink. HTH. Clemmitt
I encountered the same error (linux/bounds.h missing) with sys-kernel/gentoo-source-2.6.30-r2 and app-emulation/virtualbox-modules-3.0.2. I had recently cleaned (make clean) my kernel to free up space. Make sure that you have run make --prepare or better in your active kernel directory (or the one specified by KERNEL_DIR=<kernel directory> in your environment) and the module should compile cleanly. I ran "make prepare" and then emerge --resume completed successfully. Hope this helps.
Sorry, to clarify the command is "make prepare" and not "make --prepare"