Chargement...
 
[Voir/Cacher menus de gauche]
[Voir/Cacher menus de droite]

6 - Le MIDI

> Forums de discussion > 6 - Le MIDI > Linux pSeudo MIDI Input - problème de compilation
Dernier post

Linux pSeudo MIDI Input - problème de compilation

Sasaki utilisateur non connecté
Salut, dans la même veine que midijoystick j'ai trouvé celui-ci

http://lsmi-all.sourceforge.net/

qui permet d'utiliser son vieux clavier ou sa vielle souris en tant que contrôleur midi. Il a aussi une option pour les joysticks et les Monterey International MK-9500 / K617W reversible keyboard.

J'ai créé un nouveau fil de forum plutôt que de continuer dans midijoystick pour aller avec la page wiki que je vais créer dans la foulée. Je suis actuellement en train de lire le README et la compilation paraît un peu compliquée : il faut s'assurer que le bon kernel et les bons headers alsa-lib sont installés (mais le readme ne dit pas lesquels) et il faut donner au soft les droits d'accès aux fichiers dans /dev/input.

Je vais essayer de compiler ça, mais je vais certainement me planter très vite, alors toute aide sera appréciée ;-)

olinuxx utilisateur non connecté France
Super cette nouvelle page !

Sasaki utilisateur non connecté
J'ai réussi à localiser le paquet (libasound2-dev) qui contient les fichiers nécéssaires à la compilation et j'ai indiqué cela sur la page wiki : Linux pSeudo MIDI Input .

Je bloque à l'étape suivante comme ceci :

sudo make 

cc -g -Wall -pedantic -lasound    lsmi-keyhack.c seq.o sig.o   -o lsmi-keyhack
/tmp/ccPkZsZP.o : Dans la fonction « clean_up » :
/home/pikachu/Bureau/lsmi/lsmi-keyhack.c:239 : référence indéfinie vers « snd_seq_close »
/tmp/ccPkZsZP.o : Dans la fonction « main » :
/home/pikachu/Bureau/lsmi/lsmi-keyhack.c:617 : référence indéfinie vers « snd_seq_parse_address »
/home/pikachu/Bureau/lsmi/lsmi-keyhack.c:620 : référence indéfinie vers « snd_seq_connect_to »
seq.o : Dans la fonction « open_client » :
/home/pikachu/Bureau/lsmi/seq.c:19 : référence indéfinie vers « snd_seq_open »
/home/pikachu/Bureau/lsmi/seq.c:22 : référence indéfinie vers « snd_seq_set_client_name »
seq.o : Dans la fonction « open_output_port » :
/home/pikachu/Bureau/lsmi/seq.c:32 : référence indéfinie vers « snd_seq_create_simple_port »
seq.o : Dans la fonction « send_event » :
/home/pikachu/Bureau/lsmi/seq.c:48 : référence indéfinie vers « snd_seq_event_output_direct »
collect2: error: ld returned 1 exit status
make: *** [lsmi-keyhack] Erreur 1


J'avais cette même erreur pour chacun des modules du soft : monterey, joystick et mouse. Je les ai retirés du makefile pour voir, car seul m'intéresse le keyhack pour l'instant, mais il y a toujours ce problème de référence indéfinie... Je sais pas ce que ça veut dire.

Edit : Un indice ici : https://openclassrooms.com/forum/sujet/gcc-references-indefinies-42195

Il semblerait qu'une librairie n'ait pas été "linkée" correctement et qu'il faille la linker dans la ligne de commande au départ. Si quelqu'un peut m'aider à adapter ça à la situtation...

Sasaki utilisateur non connecté
Bon je suis un peu perdu :

si j'en crois ce qu'il y a indiqué ici https://www.developpez.net/forums/d1424230/general-developpement/programmation-systeme/linux/gtk/reference-indefinie-vers/ il faudrait compiler avec gcc en utilisant l'argument -i suivi du répertoire où se trouvent les librairies appropriées (en grand nombre si j'en crois les différents #include présents dans les fichiers.c du soft)

OR il y a un makefile, qui si j'ai bien compris l'openclassroom sur gcc, est une simplification de gcc, pour éviter d'avoir à se taper toutes les commandes de compilation. Donc on ne devrait pas faire

gcc -g -wall -pedantic -i /usr/include etc. (je sais pas ce qu'il faut mettre après)


mais un simple make devrait suffire, le développeur est censé indiquer les références aux bonnes librairies dans son makefile.

Le voici,:

LIBS=-lasound
CFLAGS=-g -Wall -pedantic $(LIBS)

.PHONY : clean all

BINS=lsmi-monterey lsmi-joystick lsmi-mouse lsmi-keyhack 

all: $(BINS)

clean:
	rm -f $(BINS)

seq.o: seq.c seq.h

sig.o: sig.c

OBJS=seq.o sig.o

lsmi-monterey: lsmi-monterey.c $(OBJS)

lsmi-joystick: lsmi-joystick.c $(OBJS)

lsmi-mouse: lsmi-mouse.c $(OBJS)

lsmi-keyhack: lsmi-keyhack.c $(OBJS)

install: $(BINS)
	install $(BINS) /usr/local/bin


Le makefile définit bien la valeur LIBS dès le début, alors pourquoi diable quand on compile il ne trouve pas ???

Afficher les articles :
Aller au forum :

Documentation [Afficher / Cacher]

Connexion
[Afficher / Cacher]

sub26nico
Bishop

Mégaphone [Afficher / Cacher]

olinuxx, 23:15, sam. 16 Dec 2017: Bonjour et bienvenue à lapin26 :-)
sub26nico, 01:29, sam. 16 Dec 2017: Salut et bienvenue à oopac, Jecy88 et ggz :-)
sub26nico, 23:57, ven. 15 Dec 2017: Salut programLyrique !
olinuxx, 20:00, ven. 15 Dec 2017: @sovylab : tu as demandé une réinitialisation de ton mot de passe, mais ton adresse courriel de contact n'est pas (plus ?) valide. Contacte moi à info HATTE linuxmao POUING org .
programLyrique, 16:04, ven. 15 Dec 2017: organteq, une modélisation physique gratuite d'orgue par pianoteq [Lien]
sub26nico, 12:22, ven. 15 Dec 2017: Salut et bienvenue à courgain :-)
olinuxx, 17:38, jeu. 14 Dec 2017: Bonjour et bienvenue à autumn :-)
sub26nico, 14:58, jeu. 14 Dec 2017: Salut et bienvenue à idens :-)
olinuxx, 19:39, mer. 13 Dec 2017: Bonjour et bienvenue à LeZaz et ggz :-)
olinuxx, 15:00, mer. 13 Dec 2017: @Eternal_happ : l'adresse courriel que tu as utilisée pour ton inscription est invalide. Contacte moi à l'adresse info AROBAZE linuxmao POINGT org
olinuxx, 14:15, mer. 13 Dec 2017: Bonjour et bienvenue à Jazus :-)
olinuxx, 23:47, mar. 12 Dec 2017: @zebassprophet : ouh yeah cool