martin f krafft <[EMAIL PROTECTED]> writes:

> Then I tried to compile a module for that kernel:
>
>   make-kpkg --append-to-version
>   -diamond-grsec-1.9.10+freeswan-ext-1.99+preempt-20030617-2
>   --rootcmd fakeroot --added-modules nvidia modules_image

Kernel modules' support for 'make-kpkg --rootcmd fakeroot modules-image' 
can be kind of spotty (and for 'make-kpkg modules' even more so), in
my experience.  As other people suggested, 'fakeroot make-kpkg' is a
little more likely to actually work.  (But IMHO, packages should be
updated so that --rootcmd works, and that 'make-kpkg modules' actually
generates a .changes file; the patches to do this generally aren't
that hard, but I haven't been good about submitting them.)

> This fails:
>
>   if [ -f /usr/src/modules/nvidia/debian/control.template ]; then \
>     cp -a /usr/src/modules/nvidia/debian/control.template
>       /usr/src/modules/nvidia/debian/control; \
>   fi
>   cp: cannot create regular file
>   `/usr/src/modules/nvidia/debian/control': Permission denied

Right: with the default setup, the user who runs make-kpkg needs write
access to /usr/src/modules, or you need to run under sudo.

> So I am wondering: what am I doing wrong? I *should* be able to
> compile modules for an existing kernel tree without write privs to
> /usr/src/modules/..., right?

Try, for example:

  cd $HOME/src
  tar xzf /usr/src/i2c.tar.gz
  tar xzf /usr/src/lm-sensors.tar.gz
  export MODULE_LOC=$HOME/src/modules
  cd $HOME/src/kernel-source-2.4.21
  make-kpkg --rootcmd=fakeroot modules-image

Setting the MODULE_LOC environment variable will tell make-kpkg to
look somewhere besides /usr/src/modules for kernel modules.

-- 
David Maze         [EMAIL PROTECTED]      http://people.debian.org/~dmaze/
"Theoretical politics is interesting.  Politicking should be illegal."
        -- Abra Mitchell


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED] 
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to