Vous n'êtes pas identifié.
Salut les amis,
J'avais réussi à compiler le module fpix pour mon appareil photo sous Ubuntu Feisty (7.04), mais avec Gusty (7.10) plus possible.
Est-ce quelqu'un aurait une astuce? Voici ce que donne le make :
praplana@ubuntu:~/Linux/fpix-0.91.0/driver$ make make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/praplana/Linux/fpix-0.91.0/driver modules make[1]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic' CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.o /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »read_frame_part«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:228: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »read_frame_part_callback«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:271: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:288: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:308: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »request_frame_callback«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:343: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »request_frame«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:372: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:415: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_sm«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:470: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:484: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_do_ioctl«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:661: Warnung: Implizite Deklaration der Funktion »ioctl_name« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:662: Warnung: format »%s« erwartet Typ »char *«, aber Argument 3 hat Typ »int« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:679: Warnung: format »%s« erwartet Typ »char *«, aber Argument 3 hat Typ »int« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826:35: Fehler: dem Makro »INIT_WORK« wurden 3 Argumente übergeben, aber es nimmt nur 2 /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_open«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826: Fehler: »INIT_WORK« nicht deklariert (erste Benutzung in dieser Funktion) /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826: Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal aufgeführt /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826: Fehler: für jede Funktion in der er auftritt.) make[2]: *** [/home/praplana/Linux/fpix-0.91.0/driver/finepix-main.o] Fehler 1 make[1]: *** [_module_/home/praplana/Linux/fpix-0.91.0/driver] Fehler 2 make[1]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic' make: *** [kernel-module] Fehler 2
Merci pour votre coup de main!
Dernière modification par calimarno (19 Nov 2007 16:58:20)
Hors ligne
T'as matté la source à cet endroit ? Et surtout jeté un oeil à cette macro.. quitte à patcher si c'est une affaire de régression..
/home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826:35: Fehler: dem Makro »INIT_WORK« wurden 3 Argumente übergeben, aber es nimmt nur 2
Hors ligne
Donc la ligne qui pose problème,
INIT_WORK(&dev->wqe, fpix_sm, dev);
mais vu mes connaissances en C, je suis un peu paumé... Si j'ai bien compris il y a un argument qui n'est pas déclaré... comment savoir lequel et comment y remédier. Est-ce un nom de varibable qui a changé avec le nouveau noyau?
Que veut tu dire par "patcher" et "régression"?
Si jamais y'a quelqu'un qui veut se pencher sur le problème, les sources sont sur :
http://sourceforge.net/projects/fpix/
Hors ligne
J'ai fais un patch rapidos mais je suis vraiment pas sûr.. essaie.. tu verras bien..
Y a pas mal de pilotes qui ont du être corrigés dans le genre d'après ce que j'ai pu voir.. si t'as de la chance, ça suffira..
--- finepix-main.c 2006-12-02 17:23:32.000000000 +0100 +++ finepix-main.c 2007-11-07 19:16:05.000000000 +0100 @@ -823,7 +823,7 @@ file->private_data = dev; /* Initialize the device structure */ - INIT_WORK(&dev->wqe, fpix_sm, dev); + INIT_WORK2(&dev->wqe, fpix_sm); init_completion(&dev->frame_done); dev->must_stop = 0;
Hors ligne
pas de nouvelles, bonne nouvelle?
Hors ligne
Petite information impertinente pour votre problème : comment emploie-t-on la commande "patch" avec un document texte comme ci-dessus ? J'ai essayé de faire "man patch", mais je crois avoir rien compris de comment employer (lorsque je tape la commande, j'ai l'impression que rien ne se passe)...
Hors ligne
cat file.diff | patch -p0 --dry-run
--dry-run étant utile pour tester si le patch s'applique correctement
si aucune erreur alors
cat file.diff | patch -p0
le -p0 concerne le strip effectué sur le chemin (prochain /) du fichier a patcher.. avec 0 il n'y a donc pas de strip.
Hors ligne
Merci [GO]Skywalker13 pour les indications. J'ai eu le temps de tester ton patch ce weekend, mais il y a toujours un truc qui cloche. Je poste la sortie de la console pour le "make". Apparemment la focntion INIT_WORK2 n'est pas déclarée ou quelque chose comme ça.
praplana@ubuntu:~/Linux/fpix-0.91.0/driver$ cat file.diff | patch -p0 patching file finepix-main.c praplana@ubuntu:~/Linux/fpix-0.91.0/driver$ ./configure bash: ./configure: No such file or directory praplana@ubuntu:~/Linux/fpix-0.91.0/driver$ make make -C /lib/modules/2.6.22-14-generic/build SUBDIRS=/home/praplana/Linux/fpix-0.91.0/driver modules make[1]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic' CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.o /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »read_frame_part«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:228: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »read_frame_part_callback«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:271: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:288: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:308: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »request_frame_callback«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:343: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »request_frame«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:372: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:415: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_sm«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:470: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:484: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_do_ioctl«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:661: Warnung: Implizite Deklaration der Funktion »ioctl_name« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:662: Warnung: format »%s« erwartet Typ »char *«, aber Argument 3 hat Typ »int« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:679: Warnung: format »%s« erwartet Typ »char *«, aber Argument 3 hat Typ »int« /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c: In Funktion »fpix_open«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-main.c:826: Warnung: Implizite Deklaration der Funktion »INIT_WORK2« CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-common.o /home/praplana/Linux/fpix-0.91.0/driver/finepix-common.c: In Funktion »start_streaming«: /home/praplana/Linux/fpix-0.91.0/driver/finepix-common.c:225: Warnung: Übergabe des Arguments 1 von »schedule_delayed_work« von inkompatiblem Zeigertyp CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-jpeg.o CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-v4l.o CC [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix-v4l2.o LD [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix.o Building modules, stage 2. MODPOST 1 modules WARNING: "INIT_WORK2" [/home/praplana/Linux/fpix-0.91.0/driver/finepix.ko] undefined! WARNING: "ioctl_name" [/home/praplana/Linux/fpix-0.91.0/driver/finepix.ko] undefined! CC /home/praplana/Linux/fpix-0.91.0/driver/finepix.mod.o LD [M] /home/praplana/Linux/fpix-0.91.0/driver/finepix.ko make[1]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.22-14-generic'
Hors ligne
Plus simple.. prend le trunk subversion.. le mainteneur à corrigé pour les derniers kernel..
svn co https://fpix.svn.sourceforge.net/svnroot/fpix/trunk fpix
J'ai testé et ca compile parfaitement..
Hors ligne
Super [GO]Skywalker13, ça marche à merveille.
Je ne suis pas habitué au système de svn et j'ai craint que le module ne soit plus maintenu.
On passe en résolu et je mettrai un mot sur le wiki.
Hors ligne
la dernière mise à jour date de 6 semaines.. c'est vachement correcte... selon moi c'est toujours maintenue.. je pense qu'il a ses raisons de ne pas avoir fait une nouvelle release..
Hors ligne