Pour votre première connexion :
Suivez les explications du tutoriel en cliquant ____ici____
Pour vous présenter :
Créez un nouveau sujet en cliquant ____ici____

Au secours, le Python me fait des misères !

De même que "Parlons Tyros" et "Parlons PSR" , voici une rubrique dédiée à l'informatique musicale. Les sujets doivent avoir un rapport avec les claviers et plus principalement avec les Tyros et PSR. Informations, didacticiels, nouveautés, astuces....Et bien sur vos demandes de renseignements, cette rubrique est à votre disposition.
Avatar du membre
Donquichutte
administrateur des forums
Messages : 1333
Enregistré le : mer. 4 févr. 2015 21:02
Localisation : Beauvais
Contact :

Au secours, le Python me fait des misères !

Message non lu par Donquichutte » jeu. 26 oct. 2017 13:58

Bonjour à tous,

Depuis un moment, j'ai écrit un programme destiné à gérer un bloc de quatre pédales pour envoyer des messages midi à notre instrument. Ce programme écrit avec l'outil de développement "Python", fonctionne fort bien chez moi !!.

J'ai réalisé un "package" du programme en question avec un logiciel adapté nommé "CxFreeze". Le paquet en question fonctionne fort bien chez moi !!.
En revanche, dès que j'installe ce package sur une autre machine, cela ne fonctionne plus !

Y aurait-il un spécialiste de Python connaissant bien les travers de CxFreeze qui pourrait me souffler quelques pistes, notamment en ce qui concerne les importations de modules d'un programme s'exécutant dans l'environnement Freeze... car c'est mon grand problème, pas moyen de faire accepter l'importation de rtmidi ou même de TKinter au lancement du programme. Ce qui fonctionnait avec Python 2.7 ne fonctionne plus avec python 3.5. Je ne soupçonne pas vraiment la version de python mais peut-être du côté de l'installation ou autre ????

D'avance merci à celui que m'aidera à sortir de l'ornière !!


A bientôt...

Christian.

Note : adresse de ma playlist : http://tyros.fr/viewtopic.php?f=47&t=1644
cg90
Je poste, souvent
Messages : 58
Enregistré le : dim. 14 août 2016 12:27
Localisation : Denney

Au secours, le Python me fait des misères !

Message non lu par cg90 » ven. 27 oct. 2017 17:06

Bonjour,

Je ne suis pas à proprement parler un spécialiste, mais je participe à la mise au point d'une appli python opensource, alors si je peux je vais essayer de t'aider.
Première chose, l'appli sur laquelle je bosse est en python 2.7, pas encore touché du python 3.
Mais dans tous les cas, as-tu des messages d'erreur t'indiquant que c'est l'import qui ne se passe pas bien ?
Tu es en 32 ou 64 bits ?


Sinon ton appli tu la publies en opensource ?
Et à titre perso ça m'intéresse, ton appli tourne-t-elle sous linux ?
Ah oui j'ai oublié de préciser, l'appli pour laquelle je donne un coup de main fonctionne sur Win, Mac et Linux, et je m'occupe de débugger sous linux.
Alors si après tout ça tu penses que je peux être utile :-)

Claude
psr-s770, et je m'aventure dans la MAO sous linux
Avatar du membre
Donquichutte
administrateur des forums
Messages : 1333
Enregistré le : mer. 4 févr. 2015 21:02
Localisation : Beauvais
Contact :

Au secours, le Python me fait des misères !

Message non lu par Donquichutte » ven. 27 oct. 2017 22:15

Bonsoir,

Je te remercie beaucoup pour ta réponse et surtout pour ta proposition.

Comme je l'explique rapidement dans mon post, j'ai une version en Py2.7 qui fonctionne aussi bien en la lançant sous interpréteur Python installé que sur un exe généré avec CxFreeze qui construit un "package" censé contenir tout ce qu'il faut pour exécuter le code sur une machine où Python n'est pas installé.

Ayant eu des problèmes sérieux avec Py2.7, j'ai migré le projet sous Py3.5 avec lequel les problèmes (blocage aléatoire en exécution) on été résolus. Je fais évoluer le logiciel depuis un bon moment (un an environ) et je l'utilise régulièrement (Plusieurs fois par jour !) sur ma machine (PC sous Windows 10) aussi bien en mode interprété qu'en mode "freeze" tout cela sans problème. En revanche, lorsque je distribue le "package" Freeze vers un PC sur lequel Python n'est pas installé, cela ne fonctionne pas et je reçois un message d'échec d'importation d'un module.

Voici le lien vers le logiciel en question : https://drive.google.com/drive/folders/ ... sp=sharing

Ce logiciel fait partie d'un projet pour lequel j'ai posté quelques articles. Pour comprendre de quoi il s'agit, le mieux est de lire la doc disponible dans le lien ci-dessus et de consulter la suite d'articles concernés ici : http://tyros.fr/viewtopic.php?f=16&t=3507#p24900

Pour l'instant le projet est limité au PC (Win 64 mais tout aussi possible en 32... ). Il utilise un module "général" pour interfacer le Midi. C'est justement l'importation de ce module (RtMidi) qui pose problème...

Dans la mesure où le module RtMidi serait disponible sur Linux ou Mac, il me semble assez facile de faire fonctionne mon projet sur ces plate-formes. Mais ceci est un peu hors sujet aujourd'hui !

Je peux te communiquer le programme source, toutefois, ce n'est pas un programme modèle pour des apprentis du langage objet ! Il ressemble plus à du pascal, C ou Basic... Pour ce qui est de son portage sous Linux, je crois que le développeur de rtmidi en a fait une version. Le reste est du Python3.5 assez standard...

Je continue à chercher...

Bonne soirée, et encore merci !
A bientôt...

Christian.

Note : adresse de ma playlist : http://tyros.fr/viewtopic.php?f=47&t=1644
Avatar du membre
Donquichutte
administrateur des forums
Messages : 1333
Enregistré le : mer. 4 févr. 2015 21:02
Localisation : Beauvais
Contact :

Au secours, le Python me fait des misères !

Message non lu par Donquichutte » mer. 1 nov. 2017 10:38

Bonjour,

J'ai enfin trouvé une solution ! Pas une correction mais plutôt un "pis aller"....

J'ai déplacé les Dll que Python ne trouvait pas depuis leur répertoire de packaging vers la racine du paquet de distribution. Maintenant tout est rentré dans l'ordre et le logiciel fonctionne à nouveau...

Merci.
A bientôt...

Christian.

Note : adresse de ma playlist : http://tyros.fr/viewtopic.php?f=47&t=1644
Répondre

Retourner vers « Votre espace Mao »