[Nouveau] Cannot compile nouveau.o in drm with kernel 2.6.26

Garnet MacPhee garnet at signalpeak.net
Sat Jul 19 04:42:41 PDT 2008


Pekka Paalanen wrote:
> On Fri, 18 Jul 2008 18:22:47 -0600
> Garnet MacPhee <garnet at signalpeak.net> wrote:
> 
>> I am getting the following error when trying to compile nouveau.o in drm/linux-core on linux kernel 2.6.26. Drm itself 
> 
> By "Drm itself" I assume you are referring to libdrm.

Yes, thats right.
> 
> 
>> root at default:~/drm/linux-core# make nouveau.o
>> make DRM_MODULES=nouveau.o modules
>> make[1]: Entering directory `/root/drm/linux-core'
>> make -C /lib/modules/2.6.26/source  SUBDIRS=`pwd` DRMSRCDIR=`pwd` modules
>> make[2]: Entering directory `/usr/src/linux-2.6.26'
>>    CC [M]  /root/drm/linux-core/drm_auth.o
>> In file included from include/linux/gfp.h:4,
>>                   from include/linux/slab.h:12,
>>                   from include/linux/percpu.h:5,
>>                   from include/asm/local.h:4,
>>                   from include/linux/module.h:19,
>>                   from /root/drm/linux-core/drmP.h:44,
>>                   from /root/drm/linux-core/drm_auth.c:36:
>> 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/slab.h:12,
>>                   from include/linux/percpu.h:5,
>>                   from include/asm/local.h:4,
>>                   from include/linux/module.h:19,
>>                   from /root/drm/linux-core/drmP.h:44,
>>                   from /root/drm/linux-core/drm_auth.c:36:
>> 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:948,
>>                   from /root/drm/linux-core/drmP.h:51,
>>                   from /root/drm/linux-core/drm_auth.c:36:
>> include/linux/mm.h:429:63: warning: "NR_PAGEFLAGS" is not defined
> 
> These look funny. Did you build your kernel from the same source tree
> the DRM is using (/lib/modules/2.6.26/source)?

Yes, /lib/modules/2.6.26/source is actually a pointer, and it points to /usr/src/linux-2.6.26 just like it should.

> I haven't seen these errors before, but my first guess would be an
> unconfigured or never-compiled kernel source tree. Hmm, yes, at least
> include/linux/bounds.h is a build-time generated file.
> 
> If you are using a precompiled kernel image from your favourite
> distribution, you might need to install also another package which allows
> building custom kernel modules. This is distro specific.
> 
I am running Slackware 12.1, and I compile my own custom kernel, I do not use the precompiled ones (they are 2.6.24 vintage). 
The kernel has indeed been compiled, and I can run X using the nv driver.

Also, the same drm git will build correctly with kernel 2.6.25.


More information about the Nouveau mailing list