Chargement...
 
Skip to main content

4 - Toutes les autres applications, les émulateurs...


Linux Sampler erreur à la compilation [résolu]

Articles: 384 France
Bonjour,
Suite à un problème d'ordinateur je me retrouve à tout ré-installer sur un ordinateur en prêt. Je suis sous Ubuntu 18.04. Mes outils habituels (Rosegarden - Ardour) fonctionnent mais je n'arrive pas à installer linuxsampler. J'ai suivi les instructions de leur site, du README et de ce site. J'ai compilé sans problème libgig et liblscp. En revanche, dans le make de linux sampler:
Copy to clipboard
lscp.y: In function ‘bool _isRuleTerminalSymbol(int)’: lscp.y:1386:18: error: ‘yyprhs’ was not declared in this scope for (int i = yyprhs[rule]; yyrhs[i] != -1; ++i) ^~~~~~ lscp.y:1386:18: note: suggested alternative: ‘yyr2’ for (int i = yyprhs[rule]; yyrhs[i] != -1; ++i) ^~~~~~ yyr2 lscp.y:1386:32: error: ‘yyrhs’ was not declared in this scope for (int i = yyprhs[rule]; yyrhs[i] != -1; ++i) ^~~~~ lscp.y:1386:32: note: suggested alternative: ‘yyr2’ for (int i = yyprhs[rule]; yyrhs[i] != -1; ++i) ^~~~~ yyr2 Makefile:448: recipe for target 'lscpparser.lo' failed

J'ai été jeter un oeil au source mais l'alternative suggérée me paraît un peu cavalière.
Des idées?
Articles: 99
Ça semble être un problème avec bison, tu es sûr de l'avoir installé?
Copy to clipboard
sudo apt install bison
.

Puis fait un
Copy to clipboard
make parser
dans ton dossier racine.
Articles: 384 France
Ben d'où il sort, le bison?
Plaisanterie mise à part, je ne l'ai vu mentionné que dans le source, en commentaire juste avant les lignes générant l'erreur ci-dessus. Pas dans les méthodes d'installation.
Bon, je viens de le faire mais le make parser génère aussi des erreurs. Je l'ai lancé du dossier linuxsampler-2.1.0, où je fais le ./configure && make . C'est ce que tu voulais dire?
Copy to clipboard
olivier@Presario-JdR:~/Téléchargements/linuxsampler-2.1.0$ make parser make[1] : on entre dans le répertoire « /home/olivier/Téléchargements/linuxsampler-2.1.0/src/network » ../../scripts/generate_lscp_parser.sh Searching for a parser generator...OK (/usr/bin/bison -y) Generating LSCP parser... lscp.y: avertissement: 1801 conflits par décalage/réduction [-Wconflicts-sr] lscp.y: avertissement: 1045 conflits par réduction/réduction [-Wconflicts-rr] lscp.y: avertissement: 1801 conflits par décalage/réduction [-Wconflicts-sr] lscp.y: avertissement: 1045 conflits par réduction/réduction [-Wconflicts-rr] Done Updating Documentation/lscp.xml...Done Generating src/network/lscp_shell_reference.cpp...Done make[1] : on quitte le répertoire « /home/olivier/Téléchargements/linuxsampler-2.1.0/src/network » make[1] : on entre dans le répertoire « /home/olivier/Téléchargements/linuxsampler-2.1.0/src/scriptvm » ../../scripts/generate_instrument_script_parser.sh Searching for lexer and parser generator...Error: You need lex (or flex) to generate the instrument script parser ! ../../scripts/generate_instrument_script_parser.sh: 20: exit: Illegal number: -1 Makefile:868: recipe for target 'parser' failed make[1]: *** [parser] Error 2 make[1] : on quitte le répertoire « /home/olivier/Téléchargements/linuxsampler-2.1.0/src/scriptvm » Makefile:944: recipe for target 'parser' failed make: *** [parser] Error 2

Articles: 19590 France
Copy to clipboard
Searching for lexer and parser generator...Error: You need lex (or flex) to generate the instrument script parser !

Articles: 384 France
Effectivement. Je l'installe dès que je repasse devant l'ordi et je vous fais un retour.
Articles: 99
Arf Olinuxx tu m'as devancé!

olicha: Essaye de regarder les librairies qui te manquent (flex, bison...) dans les messages d'erreurs parce que s'il faut encore installer 50 librairies ça va être un sacré long post sur le forum xD
Articles: 384 France
Je vais faire attention au prochain essai mais il faudrait peut-être les indiquer aussi dans la procédure d'installation, que ce soit sur ce site, sur celui de linuxsampler, voire la page qui lui est consacrée sous Ubuntu. Comme il y a déjà des librairies indiquées, on imagine que la liste est exhaustive.
Ou bien elles sont supposées être déjà là pour d'autres besoins?
Articles: 19590 France
olicha écrit:
il faudrait peut-être les indiquer aussi dans la procédure d'installation, que ce soit sur ce site


En tant que membre du site, tu peux éditer la page linuxsampler et l'améliorer.
Articles: 384 France
Bon ben je suis revenu à l'erreur du post initial. Avant j'ai plein de warning pour du deprecated mais ça passe.
Je ne comprends pas ce qu'il veut au lscpparser.lo et je ne le trouve pas avec un locate.
Désolé de faire le boulet...
Articles: 99
Tu ne fais pas le boulet, le forum est là pour ça 😊

Par contre sans message d'erreur ça va être difficile de t'aider.

EDIT: Petite question tu compile à partir du fichier tar.bz2 téléchargé depuis cette page?

RÉSOLU: Bon j'ai installée en plus liblscp-dev et j'ai pu compiler linuxsampler donc je pense que ton problème est bien lié à des libs manquantes et autres paquets manquants (liblscp-dev, flex, bison, libgig-dev...).

Dès que tu as installé toutes les librairies manquantes fait bien un
Copy to clipboard
./configure
avant de faire le
Copy to clipboard
make

Articles: 384 France
C'était les mêmes erreurs qu'au début.
J'avais compilé avant liblscp et libgig (donc, partant des sources, je suppose que j'ai déjà les headers sans installer les paquets -dev).
Je viens de tout reprendre (les 3 installations) et ça vient de passer.
Est-ce que par hasard; après l'installation de bison et flex, il fallait que je refasse le ./configure pour qu'il s'en aperçoive, J'avais juste refait le make.
Je suis donc un pas plus loin (déjà merci pour ce grand pas): pas moyen de télécharger jlscp.
Articles: 99
Cool pour la compilation 😊
Et oui si tu change quelque chose il faut toujours faire un
Copy to clipboard
./configure
avant un
Copy to clipboard
make


Que veux-tu dire par "pas moyen de télécharger jlscp"?
Articles: 384 France
Il ne se passait rien avec sourceforge après l'annonce du téléchargement dans 5 secondes.
Cet après midi ça marche...
En revanche je ne comprends pas ce que me dit le README.
J'ai installé java et open-jdk. Mais entre compilation et simple copie du fichier dans le home-jdk dont je ne vois ce que c'est, je suis un peu perdu.
Au final je veux ré-installer Fantasia auquel je m'étais habitué. Il est bien nécessaire d'avoir d'abord jlscp?
Articles: 99
Oui il faut avoir jlscp avant de pouvoir compiler fantasia.

Je n'ai pas le temps de tester mais je pense qu'il suffit de faire ça pour compiler jsampler:
Copy to clipboard
sudo apt install openjdk-11-jdk sudo apt install ant cd le/repertoire/de/JSampler-0.9/ ant build-fantasia


Et pour le lancer:
Copy to clipboard
sudo apt install openjdk-11-jre cd dist/ java -jar Fantasia-0.9.jar

Articles: 384 France
Merci pour tout ce détail.J'allais tenter Qsampler quand j'ai remarqué que tu avais modifié le message. Devant la proposition de Synaptic d'installer les librairies que je venais de compiler, je me disais qu'il y avait un risque de problème entre les versions.
Bon, ça commence bien mais en cours de compilation, j'ai
Copy to clipboard
[javac] /home/olivier/Téléchargements/JSampler-0.9/build.xml:99: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [javac] Compiling 222 source files to /home/olivier/Téléchargements/JSampler-0.9/dist/build [javac] /home/olivier/Téléchargements/JSampler-0.9/src/org/jsampler/view/fantasia/basic/PixmapPane.java:31: error: package sun.swing.plaf.synth is not visible


Avant j'avais fait, comme indiqué dans le README
Copy to clipboard
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

C'est quoi ce sun.swing.plaf?
Articles: 99
Swing est une librairie java (le language de programmation) pour créer des interfaces graphiques. Jsampler utilise swing pour fonctionner donc il faut installer swing -> mais le truc relou c'est que la dernière version de jsampler date de 2012 et que à l'époque swing était une librairie mise à jour mais maintenant swing n'a plus l'air d'être mise à jour non plus.
Donc je pense que c'est quand même faisable de compiler et d'utiliser jsampler mais ça te rajoute des étapes difficiles à contourner (projet plus mis à jour...).

(Je ne suis pas sûr de toutes les infos que je te donne çi dessus).

C'est la raison pour laquelle je te conseillait d'utiliser qsampler (un sudo apt install qsampler et c'est réglé).
Articles: 384 France
Bon finalement j'ai installé Qsampler avec Synaptic. Le apt ne fonctionnait pas. Il est possible que mon wifi soit tombé juste au moment où j'essayais.
Avant de mettre un [contourné], je vais poster sur Qsampler parce je repars à zéro avec cette interface.
Articles: 384 France
Je viens de rajouter l'indication des deux paquets qui me manquaient sur la page qui décrit l'installation de linuxsampler et je clos mon fil.
Articles: 19590 France
Super, merci pour l'ajout dans la page et pour le [résolu] ici.

Bonne musique à toi maintenant !