en fait je ne donnais pas le chemin des librairies à gdb. après lui avoir donné le chemin correct avec les options
(gdb) set solib-absolute-prefix /dev/null
(gdb) set solib-search-path /chemin_de_mes_lib
j'arrive à débugger mon programme meme si mes librairies ne sont pas compilées en statique.
j'ai maintenant un deuxième problème :
Mon but est de réussir à débugger un programme multithread.
J'ai réalisé comme dans le premier cas un programme test bidon initialisant 2 threads et qui fonctionne.
Comme pour mon premier programme, j'arrive à le débugger s'il est compilé en statique mais pas autrement. Ce coup-ci les erreurs sont les suivantes :
sur la machine de developpement :
(gdb) target remote 192.168.1.1:10000
Remote debugging using 192.168.1.1:10000
0x2aaa8bc0 in ?? ()
(gdb) b main
Breakpoint 1 at 0x4009ec: file main.c, line 35.
(gdb) c
Continuing.
Breakpoint 1, main () at main.c:35
35 if (pthread_create(&filsA, NULL, thread1, "AA")) {
(gdb) n
0x00400c20 in ?? ()
(gdb) n
Cannot find bounds of current function
Sur la cible :
Process testgdb created; pid = 765
Listening on port 10000
Remote debugging from host 192.168.1.10
gdb: error initializing thread_db library.
gdb: error initializing thread_db library.
gdb: error initializing thread_db library.
J'ai bien définis le chemin des librairies avec les fonctions set solib-absolute-prefix et set solib-search-path. De meme, la librairie libpthread.so est bien présente dans le répertoire des librairies sur ma machine locale.
le truc c'est que maintenant, pour pouvoir utiliser v4l, je dois intégrer le driver de la webcam dans un module.
d'après ce que j'ai pu lire, la libusb ne s'utilise qu'en user-space.
malgré mes recherches sur le net et l'étude du driver de ma webcam (qui fonctionne en isochrone), j'ai un peut de mal à m'en sortir et une ou 2 pistes seraient les bienvenues.
d'après ce que j'ai vu dans le code du driver usb linux, les transferts isochrones n'ont pas été implémentés a cause d'un problème qui entraine un reset de la puce.
Iso transfer support is not implemented. Adding this would include implementing recovery from the failure to service the processed ITL fifo ram in time, which will involve chip reset.
Je suis en train d'éplucher la datasheet du driver et je me lancerais bien dans sa modification pour qu'il intègre les transferts isochrones mais je n'ai aucune expérience dans ce domaine et je ne sait pas du tout quelle charge de travail ça représente.
# Semi résolu ...
Posté par midnight . En réponse au message gdbserver sur cible Mips et librairies compilées en statique. Évalué à 2.
en fait je ne donnais pas le chemin des librairies à gdb. après lui avoir donné le chemin correct avec les options
(gdb) set solib-absolute-prefix /dev/null
(gdb) set solib-search-path /chemin_de_mes_lib
j'arrive à débugger mon programme meme si mes librairies ne sont pas compilées en statique.
j'ai maintenant un deuxième problème :
Mon but est de réussir à débugger un programme multithread.
J'ai réalisé comme dans le premier cas un programme test bidon initialisant 2 threads et qui fonctionne.
Comme pour mon premier programme, j'arrive à le débugger s'il est compilé en statique mais pas autrement. Ce coup-ci les erreurs sont les suivantes :
sur la machine de developpement :
Sur la cible :
J'ai bien définis le chemin des librairies avec les fonctions set solib-absolute-prefix et set solib-search-path. De meme, la librairie libpthread.so est bien présente dans le répertoire des librairies sur ma machine locale.
[^] # Module USB
Posté par midnight . En réponse au message transferts Isochrones et webcam. Évalué à 1.
au lieu de faire marcher le mode isochrone sur le chipset USB, j'ai choisi d'utiliser une webcam utilisant le mode bulk.
en m'inspirant de cet exemple
http://users.skynet.be/chricat/SweexCam.html
j'ai donc réalisé un programme utilisant ma webcam en mode bulk.
le truc c'est que maintenant, pour pouvoir utiliser v4l, je dois intégrer le driver de la webcam dans un module.
d'après ce que j'ai pu lire, la libusb ne s'utilise qu'en user-space.
malgré mes recherches sur le net et l'étude du driver de ma webcam (qui fonctionne en isochrone), j'ai un peut de mal à m'en sortir et une ou 2 pistes seraient les bienvenues.
[^] # Re: en fait c'est du soft
Posté par midnight . En réponse au message transferts Isochrones et webcam. Évalué à 1.
sinon il y a aussi la solution de prendre une webcam sur port compact Flash.
[^] # Re: en fait c'est du soft
Posté par midnight . En réponse au message transferts Isochrones et webcam. Évalué à 1.
d'après ce que j'ai vu dans le code du driver usb linux, les transferts isochrones n'ont pas été implémentés a cause d'un problème qui entraine un reset de la puce.
Je suis en train d'éplucher la datasheet du driver et je me lancerais bien dans sa modification pour qu'il intègre les transferts isochrones mais je n'ai aucune expérience dans ce domaine et je ne sait pas du tout quelle charge de travail ça représente.