building external modules
Dumas Patrice
pertusus at free.fr
Thu Mar 4 20:48:58 UTC 2004
Hi,
Since the kernel is 2.6, I have trouble compiling and installing an external
module. I could only compile the driver as root. And before I compile it I
had to do the following as root:
* edit the Makefile in /usr/src/kernel-2.6.... and remove 'custom' from the
EXTRAVERSION. Otherwise it isn't installed at the right place.
* run
make oldconfig
make prepare
If I try to compile as a user, I get
[pat at localhost driver]$ make
make -C /usr/src/linux SUBDIRS=/home/pat/src/eagleusb/driver modules
make[1]: Entering directory `/opt/fc2t/usr/src/linux-2.6.3-1.118'
HOSTCC scripts/modpost.o
cc1 : Permission non accordée : ouverture du fichier de dépendances
scripts/.modpost.o.d
make[2]: *** [scripts/modpost.o] Erreur 1
make[1]: *** [scripts] Erreur 2
make[1]: Leaving directory `/opt/fc2t/usr/src/linux-2.6.3-1.118'
make: *** [eagle-usb.ko] Erreur 2
If I can compile the driver, as root, I get:
[root at localhost driver]# make
make -C /usr/src/linux SUBDIRS=/home/pat/src/eagleusb/driver modules
make[1]: Entering directory `/opt/fc2t/usr/src/linux-2.6.3-1.118'
HOSTCC scripts/modpost.o
HOSTLD scripts/modpost
*** Warning: Overriding SUBDIRS on the command line can cause
*** inconsistencies
make[2]: « arch/i386/kernel/asm-offsets.s » est à jour.
CC [M] /home/pat/src/eagleusb/driver/eu_main.o
CC [M] /home/pat/src/eagleusb/driver/Boot.o
CC [M] /home/pat/src/eagleusb/driver/eu_utils.o
CC [M] /home/pat/src/eagleusb/driver/Pipes.o
CC [M] /home/pat/src/eagleusb/driver/Me.o
CC [M] /home/pat/src/eagleusb/driver/Sm.o
CC [M] /home/pat/src/eagleusb/driver/eu_msg.o
CC [M] /home/pat/src/eagleusb/driver/Dsp.o
CC [M] /home/pat/src/eagleusb/driver/Mpoa.o
CC [M] /home/pat/src/eagleusb/driver/Uni.o
CC [M] /home/pat/src/eagleusb/driver/Sar.o
CC [M] /home/pat/src/eagleusb/driver/Oam.o
CC [M] /home/pat/src/eagleusb/driver/eu_eth.o
LD [M] /home/pat/src/eagleusb/driver/eagle-usb.o
Building modules, stage 2.
MODPOST
CC /home/pat/src/eagleusb/driver/eagle-usb.mod.o
LD [M] /home/pat/src/eagleusb/driver/eagle-usb.ko
make[1]: Leaving directory `/opt/fc2t/usr/src/linux-2.6.3-1.118'
Well, it works.
It is in line with what I have seen on some docs about the building of
modules, but I am not very comfortable with that. First I don't like to build
as root and second I don't know what to do for rpm building. What should I
do to build modules as non root, and build rpms for the module ?
I searched for informations on that subject but I haven't found anything.
Pat
More information about the fedora-test-list
mailing list