Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

CentOS 6 Kernel-Modul mit dkms bauen - wo beginnt der Irrweg?

4 views
Skip to first unread message

Edzard Egberts

unread,
Jun 9, 2014, 9:01:43 AM6/9/14
to
Ich mᅵchte fᅵr meine alte SCSI-Karte den "ACARD SCSI support" aktivieren
und indem das entsprechende Modul "atp870u.ko" installiert wird.

Dazu liegt mir die Anleitung
http://wiki.centos.org/HowTos/BuildingKernelModules - "2. Building a
kernel module using Dynamic Kernel Module Support (DKMS)" vor und die
habe ich wahrscheinlich nicht richtig verstanden:

Ich habe zwar garantiert den richtigen Source-Tree installiert
("linux-2.6.32-431.17.1.el6.x86_64" genau wie mit "uname -r"),
allerdings war es wohl nicht ausreichend, nur den Code vom /scsi/ zu
kopieren, oder bei der Definition der "dkms.conf" habe ich etwas falsch
gemacht:

>mkdir /usr/src/scsi-1.0new
>cd
/home/ed/rpmbuild/BUILD/kernel-2.6.32-431.17.1.el6/linux-2.6.32-431.17.1.el6.x86_64/drivers/scsi/
>cp -a * /usr/src/scsi-1.0new/
>cd /usr/src/scsi-1.0new/
>nano dkms.conf

PACKAGE_NAME="scsi"
PACKAGE_VERSION="1.0new"
BUILT_MODULE_NAME[0]="atp870u"
DEST_MODULE_LOCATION[0]="/kernel/drivers/scsi/"
AUTOINSTALL="yes"

Das gibt leider einen Fehler beim Build:

>dkms add -m scsi -v 1.0new
>dkms build -m scsi -v 1.0new

[root@centos ~]# dkms build -m scsi -v 1.0new

Kernel preparation unnecessary for this kernel. Skipping...

Building module:
cleaning build area....
make KERNELRELEASE=2.6.32-431.17.1.el6.x86_64 -C
/lib/modules/2.6.32-431.17.1.el6.x86_64/build
M=/var/lib/dkms/scsi/1.0new/build...................(bad exit status: 2)

Error! Bad return status for module build on kernel:
2.6.32-431.17.1.el6.x86_64 (x86_64)
Consult the make.log in the build directory
/var/lib/dkms/scsi/1.0new/build/ for more information.
0
0



Der Abschnitt in der make.log:

LD [M] /var/lib/dkms/scsi/1.0new/build/bfa/bfa.o
LD /var/lib/dkms/scsi/1.0new/build/bnx2fc/built-in.o
CC [M] /var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc_els.o
In Datei, eingefᅵgt von
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc_els.c:15:
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc.h:63:31: Fehler:
../../net/cnic_if.h: Datei oder Verzeichnis nicht gefunden
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc.h:64:44: Fehler:
../../net/bnx2x/bnx2x_mfw_req.h: Datei oder Verzeichnis nicht gefunden
In file included from
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc_els.c:15:
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc.h:236: Fehler: Feld
ᅵfcoe_capᅵ hat unvollstᅵndigen Typen
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc.h:506: Warnung: ᅵstruct
kcqeᅵ innerhalb Parameterliste deklariert
/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc.h:506: Warnung: sein
Gᅵltigkeitsbereich umfasst nur diese Definition bzw. Deklaration, was
Sie wahrscheinlich nicht wollten
make[2]: *** [/var/lib/dkms/scsi/1.0new/build/bnx2fc/bnx2fc_els.o] Fehler 1
make[1]: *** [/var/lib/dkms/scsi/1.0new/build/bnx2fc] Fehler 2
make: *** [_module_/var/lib/dkms/scsi/1.0new/build] Fehler 2
make: Leaving directory `/usr/src/kernels/2.6.32-431.17.1.el6.x86_64'

Da wird scheinbar Sourcecode benᅵtigt, den ich nicht kopiert habe
(../../) und das kann ja nicht stimmen. Aber warum nicht? Muss ich den
gesamten Driver-Code kopieren, oder kann ich das Modul genauer angeben?
Ich sehe, dass es nicht geht, aber nicht, wo der Fehler stecken kᅵnnte. :o(
0 new messages