sherlokk Posté(e) le 1 août 2005 Partager Posté(e) le 1 août 2005 Salut tout le monde ! J'aurais besoin d'un peu d'aide : j'essaie d'utiliser (logiciel qui simule une console DJ, http://mixxx.sourceforge.net/), mais j'ai à chaque fois une segfault pendant son initialisation :( J'utilise une Ubuntu Hoary. Comme il n'y a pas de package disponible (pas trouvé en tout cas), j'ai d'abord essayé avec la version binaire, puis en le compilant depuis les sources. J'ai compilé avec et sans le support de JACK, pour tester. Mais j'ai invariablement un segfault, voilà ce que ça donne dans une console : yannick@shagshag:~/mixxx-1.4.2$ mixxx Debug: Starting up... Debug: MidiObjectOSS: Open of MIDI device /dev/midi failed. Debug: Alsa getapi Debug: Track: /home/yannick/.mixxxtrack.xml does not exists. Debug: MidiObjectOSS: Open of MIDI device /dev/midi failed. Debug: id 0, sr 96000, ch 2, bufsize 16, bufno 120 Erreur de segmentation J'ai essayé de voir ce qui fait planter exactement en lançant un "strace mixxx", voici ce que ça donne à partir de la dernière ligne affichée dans la console : write(2, "Debug: id 0, sr 96000, ch 2, buf"..., 51Debug: id 0, sr 96000, ch 2, bufsize 16, bufno 120 ) = 51 open("/dev/dsp", O_WRONLY|O_NONBLOCK) = 7 close(7) = 0 open("/dev/dsp", O_WRONLY) = 7 ioctl(7, SNDCTL_DSP_SETFRAGMENT, 0xbffff618) = 0 ioctl(7, SNDCTL_DSP_SETFMT or SOUND_PCM_READ_BITS, 0xbffff618) = 0 ioctl(7, SOUND_PCM_READ_CHANNELS, 0xbffff634) = 0 ioctl(7, SNDCTL_DSP_SPEED or SOUND_PCM_READ_RATE, 0xbffff618) = 0 mmap2(NULL, 8392704, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb4477000 mprotect(0xb4477000, 4096, PROT_NONE) = 0 clone(child_stack=0xb4c77b28, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM |CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED, parent_tidptr=0xb4c77bf8, {entry_number:6, base_addr:0xb4c77bb0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb4c77bf8) = 18604 socket(PF_INET, SOCK_STREAM, IPPROTO_IP) = 8 getsockname(8, {sa_family=AF_INET, sin_port=htons(0), sin_addr=inet_addr("0.0.0.0")}, [16]) = 0 getpeername(8, 0xbffff620, [128]) = -1 ENOTCONN (Transport endpoint is not connected) setsockopt(8, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0 bind(8, {sa_family=AF_INET, sin_port=htons(33033), sin_addr=inet_addr("127.0.0.1")}, 16) = 0 getsockname(8, {sa_family=AF_INET, sin_port=htons(33033), sin_addr=inet_addr("127.0.0.1")}, [16]) = 0 getpeername(8, 0xbffff5e0, [128]) = -1 ENOTCONN (Transport endpoint is not connected) listen(8, 1) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 futex(0x81e4d9c, FUTEX_WAKE, 1) = 1 futex(0x81e4dbc, FUTEX_WAKE, 1) = 1 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 futex(0x81e4d9c, FUTEX_WAKE, 1) = 1 futex(0x81e4dbc, FUTEX_WAKE, 1) = 1 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 gettimeofday({1122804484, 871748}, NULL) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 gettimeofday({1122804484, 883275}, NULL) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 gettimeofday({1122804484, 893036}, NULL) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 gettimeofday({1122804484, 901455}, NULL) = 0 ioctl(5, FIONREAD, [1]) = 0 ioctl(5, FIONREAD, [1]) = 0 gettimeofday({1122804484, 901912}, NULL) = 0 gettimeofday({1122804484, 959304}, NULL) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV +++ Voilà, je ne sais pas trop où chercher quel est le problème, est-ce que quelqu'un aurait une idée ? J'ai déjà tenté les forums Ubuntu mais personne n'a l'air inspiré (aucune réponse) Merci d'avance pour toutes vos suggestions :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 1 août 2005 Partager Posté(e) le 1 août 2005 c'est normal les deux "failed" et le "does not exist" dans les message de debug ? essaye avec un periphérique midi émulé (genre à travers arts) Lien vers le commentaire Partager sur d’autres sites More sharing options...
sherlokk Posté(e) le 1 août 2005 Auteur Partager Posté(e) le 1 août 2005 Je ne pensais pas que cela puisse avoir un impact (après tout le logiciel peut se passer de contrôleur midi), mais j'essaierai de voir de ce côté là après le boulot. Merci :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
sherlokk Posté(e) le 1 août 2005 Auteur Partager Posté(e) le 1 août 2005 Bon, après changement de /dev/midi vers le groupe audio au lieu de root, ce message d'erreur a disparu. Mais tout le reste est inchangé ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
lorinc Posté(e) le 1 août 2005 Partager Posté(e) le 1 août 2005 ça segfault toujours au même endroit ? tu peux owner tous les périphériques audio par le group audio (/dev/dsp et compagnie) l'appel ioctl est pour changer les propriétés d'un périphérique et je me demande si ça viendrait pas d'un manque de droit Lien vers le commentaire Partager sur d’autres sites More sharing options...
sherlokk Posté(e) le 1 août 2005 Auteur Partager Posté(e) le 1 août 2005 C'est déjà le cas malheureusement, (/dev/snd/* et /dev/midi, je ne vois rien d'autre). Lien vers le commentaire Partager sur d’autres sites More sharing options...
neologix Posté(e) le 8 août 2005 Partager Posté(e) le 8 août 2005 Ce qu'il y a, c'est que le kernel n'aime pas qu'un programme aille écrire dans l'espace d'adressage de son voisin, ce qui est normal, et balance un SIGSEGV. L'application est mal codée, enfin c'est ce que je pense. Trouve une autre version binaire du programme. neo Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.