sf64pcr (не могу создать модуль)

Выбор и настройка HardWare

Модератор: Модераторы разделов

anatolich
Сообщения: 15
ОС: Mandriva2007

sf64pcr

Сообщение anatolich »

Есть радиотюнер Fortemedia SF 64PCR, под него скачал архив для сборки модуля (ОС Debian etch, ядро 2.6.18), распокавал запускаю make, а он при компиляции выдает ошибку:

Код:

make make -C /lib/modules/2.6.18-4-686/build SUBDIRS=/home/anatolich/soft/sf64pcr-lin ux2.6 modules make[1]: Entering directory `/usr/src/linux-headers-2.6.18-4-686' CC [M] /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.o /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c: In function ‘sf64pcr_func tion’: /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:202: warning: implicit dec laration of function ‘video_devdata’ /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:202: warning: initializati on makes pointer from integer without a cast /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:203: error: dereferencing pointer to incomplete type /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:287: error: dereferencing pointer to incomplete type /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c: In function ‘sf64pcr_ioct l’: /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:301: warning: initializati on makes pointer from integer without a cast /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:302: error: dereferencing pointer to incomplete type /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:306: warning: implicit dec laration of function ‘video_usercopy’ /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c: At top level: /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:314: error: ‘video_exclusi ve_open’ undeclared here (not in a function) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:315: error: ‘video_exclusi ve_release’ undeclared here (not in a function) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:320: error: variable ‘sf64 pcr_radio’ has initializer but incomplete type /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:322: error: unknown field ‘owner’ specified in initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:322: warning: excess eleme nts in struct initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:322: warning: (near initia lization for ‘sf64pcr_radio’) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:323: error: unknown field ‘name’ specified in initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:323: warning: excess eleme nts in struct initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:323: warning: (near initia lization for ‘sf64pcr_radio’) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:324: error: unknown field ‘type’ specified in initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:324: warning: excess eleme nts in struct initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:324: warning: (near initia lization for ‘sf64pcr_radio’) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:325: error: unknown field ‘hardware’ specified in initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:325: warning: excess eleme nts in struct initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:325: warning: (near initia lization for ‘sf64pcr_radio’) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:326: error: unknown field ‘fops’ specified in initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:326: warning: excess eleme nts in struct initializer /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:326: warning: (near initia lization for ‘sf64pcr_radio’) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c: In function ‘sf64pcr_prob e’: /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:351: error: invalid use of undefined type ‘struct video_device’ /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:353: warning: implicit dec laration of function ‘video_register_device’ /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:353: error: ‘VFL_TYPE_RADI O’ undeclared (first use in this function) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:353: error: (Each undeclar ed identifier is reported only once /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:353: error: for each funct ion it appears in.) /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:359: error: invalid use of undefined type ‘struct video_device’ /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c: In function ‘sf64pcr_remo ve’: /home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.c:373: warning: implicit dec laration of function ‘video_unregister_device’ make[2]: *** [/home/anatolich/soft/sf64pcr-linux2.6/radio-sf64pcr.o] Ошибка 1 make[1]: *** [_module_/home/anatolich/soft/sf64pcr-linux2.6] Ошибка 2 make[1]: Leaving directory `/usr/src/linux-headers-2.6.18-4-686' make: *** [default] Ошибка 2
Спасибо сказали:
anatolich
Сообщения: 15
ОС: Mandriva2007

Re: sf64pcr

Сообщение anatolich »

Может у кого готовый модуль есть? Поделитесь плиз :console:
Спасибо сказали:
anatolich
Сообщения: 15
ОС: Mandriva2007

Re: sf64pcr

Сообщение anatolich »

anatolich писал(а):
02.08.2007 22:15
Может у кого готовый модуль есть? Поделитесь плиз :console:

Подскажите хотябы куда еще можно обратиться с этим вопросом?
Спасибо сказали:
~KoT~
Сообщения: 4
ОС: Fedora 8

Re: sf64pcr

Сообщение ~KoT~ »

После следующих изменений у меня откомпилировался.

Код: Выделить всё

--- radio-sf64pcr.c   2004-07-14 15:27:23.000000000 +0600
+++ radio-sf64pcr.c       2007-09-01 17:37:09.000000000 +0600
@@ -54,6 +54,7 @@
 #include <asm/io.h>            /* outb, outb_p                 */
 #include <asm/uaccess.h>       /* copy to/from user            */
 #include <linux/videodev.h>    /* kernel radio structs         */
+#include <media/v4l2-dev.h>
 #include <linux/spinlock.h>
 #include <linux/pci.h>

@@ -335,8 +336,8 @@
 MODULE_DESCRIPTION("Driver for the SF64-PCR (alias PCI RadioLINK) radio card.");
 MODULE_LICENSE("GPL");

-MODULE_PARM(radio_nr, "i");
-MODULE_PARM_DESC(radio_nr, "Number of /dev/video[x] device.");
+//MODULE_PARM(radio_nr, "i");
+//MODULE_PARM_DESC(radio_nr, "Number of /dev/video[x] device.");

 module_init(pcr_init)
 module_exit(pcr_cleanup_module)

Система: CentOS release 5 (Final)
Ядро: kernel-2.6.18-8.1.8.el5
Спасибо сказали:
anatolich
Сообщения: 15
ОС: Mandriva2007

Re: sf64pcr

Сообщение anatolich »

~KoT~ писал(а):
01.09.2007 16:07
После следующих изменений у меня откомпилировался.

Код: Выделить всё

--- radio-sf64pcr.c   2004-07-14 15:27:23.000000000 +0600
+++ radio-sf64pcr.c       2007-09-01 17:37:09.000000000 +0600
@@ -54,6 +54,7 @@
 #include <asm/io.h>            /* outb, outb_p                 */
 #include <asm/uaccess.h>       /* copy to/from user            */
 #include <linux/videodev.h>    /* kernel radio structs         */
+#include <media/v4l2-dev.h>
 #include <linux/spinlock.h>
 #include <linux/pci.h>

@@ -335,8 +336,8 @@
 MODULE_DESCRIPTION("Driver for the SF64-PCR (alias PCI RadioLINK) radio card.");
 MODULE_LICENSE("GPL");

-MODULE_PARM(radio_nr, "i");
-MODULE_PARM_DESC(radio_nr, "Number of /dev/video[x] device.");
+//MODULE_PARM(radio_nr, "i");
+//MODULE_PARM_DESC(radio_nr, "Number of /dev/video[x] device.");

 module_init(pcr_init)
 module_exit(pcr_cleanup_module)

Система: CentOS release 5 (Final)
Ядро: kernel-2.6.18-8.1.8.el5



Огромное человеческое спасибо :-)
Спасибо сказали: