Salut,
Pour info, si certains sont intéressés par la mao, je suis en train d'essayer de monter un système de ce genre : http://mtg.upf.edu/reactable/
C'est assez tordu, il y a pas mal de logiciels qui s'imbriquent les uns dans les autres et j'avoue que j'ai pas encore tout bien compris, mais bon, je suis arrivé à faire marcher le simulateur. Maintenant, il faudrait que j'arrive à faire fonctionner pure data pour qu'il soit attaqué par ce simulateur.
Je suis encore avec la FC5, mais plus pour longtemps vu que le système commence à devenir assez bancal.
J'ai du installer pure data en compilant les sources vu que je n'arrivais pas à faire marcher le dépôt ccrma pour FC5. Ça s'est bien passé mais maintenant, lorsque je lance pure data avec la commande "pd", ça hurle : "Exception en point flottant", et rien de plus.
Je ne sais pas trop comment débugger ça; /var/log/messages n'indique rien de spécial.

Si ça peut aider, en faisant un "strace pd", ça donne :
execve("/usr/local/bin/pd", ["pd"], [/* 43 vars */]) = 0
brk(0)                                  = 0x9726000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fea000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=105827, ...}) = 0
mmap2(NULL, 105827, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7fd0000
close(3)                                = 0
open("/lib/libasound.so.2", O_RDONLY)   = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\344"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=873512, ...}) = 0
mmap2(0x598f000, 874868, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x598f000
mmap2(0x5a60000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd0) = 0x5a60000
close(3)                                = 0
open("/lib/librt.so.1", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\354"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=43932, ...}) = 0
mmap2(0x8dd000, 29260, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x8dd000
mmap2(0x8e3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6) = 0x8e3000
close(3)                                = 0
open("/usr/lib/libjack.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360K\20"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=69816, ...}) = 0
mmap2(0x101000, 100036, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x101000
mmap2(0x10f000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe) = 0x10f000
mmap2(0x112000, 30404, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x112000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P\254\256"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=16436, ...}) = 0
mmap2(0xaea000, 12408, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xaea000
mmap2(0xaec000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xaec000
close(3)                                = 0
open("/lib/libm.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0pc\254\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=199788, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fcf000
mmap2(0xac3000, 147568, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xac3000
mmap2(0xae6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x22) = 0xae6000
close(3)                                = 0
open("/lib/libpthread.so.0", O_RDONLY)  = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220z\302"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=112148, ...}) = 0
mmap2(0xc23000, 78268, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xc23000
mmap2(0xc33000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf) = 0xc33000
mmap2(0xc35000, 4540, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xc35000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\n6\232"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1532528, ...}) = 0
mmap2(0x98e000, 1254812, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x98e000
mmap2(0xabb000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12d) = 0xabb000
mmap2(0xabe000, 9628, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xabe000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fce000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fcd000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7fcd6c0, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
--- SIGFPE (Floating point exception) @ 0 (0) ---
+++ killed by SIGFPE +++
Process 712 detached
Voilou, j'ai pas mal cherché, mais rien trouvé de pertinent; si quelqu'un a une idée rapidement, merci, je serais curieux de tester; sinon au programme demain : sauvegardes puis install de fedora 8, on verra bien si ça marche mieux...
faut debuguer avec gdb. Ou alors le compiler sans -ffpe-trap et en priant que l'erreur soit sans effet 🙂
Arf, elle est bien bonne celle là, j'ignorais l'existence de ce debugger, on me cache des choses ici ( 🙂 ), merci à toi pascalp! Encore de l'avalage de man pages en perspective.
Voilà ce que ça me donne :
[blabla@localhost ~]$ gdb pd
GNU gdb Red Hat Linux (6.3.0.0-1.122rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".

(gdb) run
Starting program: /usr/local/bin/pd
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0x970000

Program received signal SIGFPE, Arithmetic exception.
0x0097a396 in do_lookup_x () from /lib/ld-linux.so.2
(gdb) c
Continuing.

Program terminated with signal SIGFPE, Arithmetic exception.
The program no longer exists.
(gdb) q

[blabla@localhost ~]$
Pour moi, c'est pas clair ce qui cloche avec ce /lib/ld-linux.so.2
J'ai ça :
[blabla@localhost ~]$ ll /lib/ld-linux.so.2
lrwxrwxrwx 1 root root 9 mar  8  2007 /lib/ld-linux.so.2 -> ld-2.4.so
[blabla@localhost ~]$ ll /lib/ld-2.4.so
-rwxr-xr-x 1 root root 121424 sep 12  2006 /lib/ld-2.4.so
[blabla@localhost ~]$
Je vois pas trop ce que fout ce "2.4" ici alors que j'ai un noyau 2.6; m'enfin, je comprends rien mais j'aurais au moins pris connaissance avec ce gdb, qui devrait au passage m'ôter quelques épines du pied lorsque je rencontre des segmentation faults ou autres joyeusetés en c++.

Bueno, vous cassez pas trop la tête avec mon problème, je pense que mon système est au bord de la rupture (...), j'va profiter du soleil, et après le grand saut de FC5 à F8 (ça sera pas trop tôt!)