IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Exécutable MATLAB ?


Sujet :

MATLAB

  1. #1
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut Exécutable MATLAB ?
    Bonjour

    j'ai crée un logiciel avec une interface grâce à 5 fichier.m et un fichier principal .m à partir duquel je lance mon interface

    Je désire créer un executable de telle façon qu'il fonctionne sur n'importe quel ordinateur XP ou Vista sans l'aide d'un quelconque logiciel (matlab, MS visual studio...)

    Quelle est la meilleure façon de le faire

    Merci

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Tu devrais trouver ton bonheur dans la ,
    A ce chapitre 11. Les applications déployées exécutables sans MATLAB

    Reviens-nous voir si quelquechose t'échappe.

  3. #3
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    merci pour ta réponse

    J'ai fait comme dit et j'ai obtenu l'executable quand j'execute sur ma machine sa marche quand j'execute sur une autre sans Matlab J' ai une erreur qui me dit que mclmcrrt77.dll est manquant

    dans ton lien il me dise qu'il faut installer le Le MATLAB Component Runtime (MCR) je ne suis pas sure de savoir comment l'installer ? ou trouver le fichier qui l'installe ?

    merci d'avance

  4. #4
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    En fait cela dépend de ta version de MATLAB.
    Je suppose que tu dois être en 7 quelquechose.
    Dans la dernière version que j'ai approchée (7.1 SP3 je crois) il fallait utiliser en ligne de commande dans MATLAB la fonction BUILDMCR qui te créait un fichier MCRInstaller.zip.
    Apparemment maintenant il faut fournir à l'utilisateur le fichier MCRInstaller.exe comme décrit dans le lien ci-dessous :
    Replacement of MCRInstaller.zip and BUILDMCR Functionality
    (ce qui est gênant c'est qu'il faut être admin de l'ordinateur pour le lancer...)

    Je te conseille (même si ce n'est pas évident) de rechercher donc sur le site de The Mathworks ce qui est approprié à ta plate-forme et à ta version de MATLAB (à ce sujet c'est toujours bien de les préciser dès ton 1er post )

    Bon courage.

  5. #5
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    ma version c'est Matlab 2007b et mon O.S. est windows Vista

    Ce que je ne comprend pas c'est
    1 - ou trouver le fichier MCRInstaller.exe parceque je ne le trouve pas dans les fichiers que Matlab a généré (lorsque j'ai créé l'executable)

    2 - l'usager auquel je vais remetre le programme sera t-il obliger de l'installer ? ou c'est moi uniquement

    3 - Si oui y a t-il un moyen de le contourner car justement le but recherché est que l'usager puisse l'utiliser sans rien installer sur son ordinateur

  6. #6
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Citation Envoyé par harris_macken Voir le message
    1 - ou trouver le fichier MCRInstaller.exe parceque je ne le trouve pas dans les fichiers que Matlab a généré (lorsque j'ai créé l'executable)
    Là (comme indiqué dans le lien), il n'est pas généré il existe dans MATLAB :
    matlabroot\toolbox\compiler\deploy\win32
    La valeur de la variable matlabroot tu la trouves tout simplement en tapant matlabroot en ligne de commande.
    Sinon si tu regardes le chapitre précédent dans le lien il semble que dans ta version il y ait un outil pour créer le package donc peut-être serait-il judicieux de l'utiliser (je ne l'ai jamais utilisé moi-même et n'ai pas MATLAB sous la main), pas sûre que ça récupère l'éxécutable ceci dit.
    C'est expliqué là : Comment créer un exécutable fonctionnant sans MATLAB ?
    (désolée je ne l'avais pas vu quand je t'ai répondu la 1ère fois)

    Citation Envoyé par harris_macken Voir le message
    2 - l'usager auquel je vais remetre le programme sera t-il obliger de l'installer ? ou c'est moi uniquement
    A priori tel que je le comprends, oui.
    Sinon, sur mon ancienne version où il s'agissait d'un zip, je faisais moi-même le "dézippage" pour que l'utilisateur n'ait rien à faire.
    Donc tu peux essayer de lancer l'éxécutable pour voir ce qu'il te crée (a priori il ne fait que créer des dossiers et fichiers) et fournir ensuite tout ça à l'utilisateur (attention du coup ça peut être gros, en R14 200 Mo environ).
    Attention à ne pas oublier aussi la mise à jour de la variable PATH : voir Windows Path for Run-Time Deployment
    Personnellement je créais un .bat pour que le PATH se mette à jour uniquement lors de l'utilisation de l'outil.

    Citation Envoyé par harris_macken Voir le message
    3 - Si oui y a t-il un moyen de le contourner car justement le but recherché est que l'usager puisse l'utiliser sans rien installer sur son ordinateur
    Voir ci-dessus, mais je ne promets rien.

  7. #7
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    Juste pour dire que je confirme ce que dit caro. Tout est également expliqué dans notre FAQ Compiler. Le MCR doit etre obligatoirement installé sur la machine où il n'y a pas MATLAB sans cela ,tu auras l'erreur que tu reçois sur la lib mclmcrrt7x.dll

    Pour terminer, je rappelle que le but du ML Compiler est de pouvoir déployer ses applications gratuitement sur des postes où MATLAB n'est pas installé.

    Une autre chose avec le deploytool tu peux packager ton exe et ctf avec le MCR en cliquant sur le bouton settings.

  8. #8
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Bonjour,

    merci pour vos réponse mais désolé comme vous dites c'est compliqué et sa ne marche pas !

    Voila j'ai un
    fichier_principal.m
    Fichier1
    Fichier2

    Pouvez vous me dire exactement la recette (toute les étapes ? ou trouver quoi ? ou mettre quoi ? comment ajouter les path ? ) pour que sa marche
    Le mcr doit etre installé : doit il être présent dans le repertoire, ou installé comme un logiciel...

    Je suis sur Windows avec Matlab R2006b

    Merci

  9. #9
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    D'abord:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mcc -mv fichier_principal
    puis copier coller de fichier_principal.ctf et fichier_principal.exe sur le poste où il n'y a pas MATLAB
    Enfin installe le MCR comme un logiciel en double cliquant sur MCRinstaller.exe

  10. #10
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    oui je viens de tester toujour la meme erreur

  11. #11
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    ton application est faite avec matlab r2006b , es tu sûr d'utiliser le MCR de la R2006B?

  12. #12
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    oui le compilateur est 4.7 (2006)

  13. #13
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    si tu es sur que la version MCR est celle de la R2006b alors c'est un problème avec la vraiable PATH sur le pc où MATLAB n'est pas installé, il faut alors appliquer l'option 2 de cette solution.

  14. #14
    Membre Expert
    Avatar de tug83
    Homme Profil pro
    MATLAB Geek !
    Inscrit en
    Juin 2006
    Messages
    1 781
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : MATLAB Geek !
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 781
    Par défaut
    non en fait ton erreur est bien du à la version MCR que tu utilises.
    Si tu as utilisé la R2006b, tu dois utiliser et installerle MCR 75
    le MCR 77 est celui de la R2007b

  15. #15
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Désolé c'est moi qui me suis bien trompé c'est bien la version 2007b

    Y'a t-il pas un autre moyen de contourner sa

    Par exemple convertir le code en java ? ou autre chose

    S'il y une autre solution pour avoir un executable tout simplement sans necessité de toucher au path et installer d'autre solution Je te remercierai de me dire comment procéder

  16. #16
    Membre chevronné

    Inscrit en
    Août 2007
    Messages
    302
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 302
    Par défaut
    avec le compilateur de MATLAB 6.5

  17. #17
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    peut etre plus explicite sur comment procéder avec la solution Matlab 6.5?

    merci

  18. #18
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Salut

    J ai reinstaller la version 6.5 de matlab

    quand je compile

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mcc -mv Fichier_Principal

    j ai une erreur

    Error helpview.c: 1220 type error in argument 2 to `mlfAssign'; found `int' expected `pointer to incomplete struct mxArray_tag defined at C:\MATLAB6p5\extern\include\matrix.h 162'
    Error helpview.c: 1226 type error in argument 2 to `mlfAssign'; found `int' expected `pointer to incomplete struct mxArray_tag defined at C:\MATLAB6p5\extern\include\matrix.h 162'
    2 errors, 0 warnings

    MBUILD.BAT: Error: Compile of 'helpview.c' failed.

    ??? Error using ==> mbuild
    Unable to complete successfully

    ??? Error: An error occurred while shelling out to mbuild (error code = 1).
    Unable to build executable.

    Error in ==> C:\MATLAB6p5\toolbox\compiler\mcc.dll

  19. #19
    Membre éclairé
    Inscrit en
    Février 2005
    Messages
    367
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 367
    Par défaut
    Bref, je reviens à la version 2007b

    2. A second option is that the system's PATH environment variable was not set correctly.

    During the course of the MATLAB Component Runtime installation, the following directory should have been added to your system path:

    $MCRROOT\v$VER\runtime\win32
    To work around this issue, manually update the PATH environment variable on your deployment machine to include the following directory:

    $MCRROOT\v$VER\runtime\win32
    1 - J'ai pas bien compris comment on met le path
    MCRROOT c'est le repertoire de mon fichier MCR ou je doit copier textuellement

    2 - Y a t-il un moyen de le faire automatiquement

    merci

  20. #20
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    L'alternative la plus simple selon moi est de créer un fichier .bat.
    exemple, tu crées le fichier lanceur.bat contenant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set PATH=%PATH%;$MCRROOT\v$VER\runtime\win32
    fichierprincipal.exe
    où tu dois effectivement remplacer $MCRROOT\v$VER par le chemin complet du répertoire où est installé le MCR.
    L'utilisateur lancera ensuite le programme en double-cliquant sur le fichier lanceur.bat

Discussions similaires

  1. Exécutable MATLAB et versions antérieures
    Par guefrachi dans le forum MATLAB
    Réponses: 10
    Dernier message: 15/10/2010, 16h04
  2. Exécution matlab avec JNA
    Par Pikouse dans le forum Eclipse
    Réponses: 0
    Dernier message: 11/09/2009, 15h55
  3. exécutable matlab ouverture c++
    Par worlds_angel dans le forum MATLAB
    Réponses: 1
    Dernier message: 27/05/2009, 14h46
  4. Convertir un code C++ en un exécutable MATLAB
    Par abir2007gallas dans le forum MATLAB
    Réponses: 1
    Dernier message: 11/04/2008, 16h06
  5. Exécutable MATLAB sous Linux
    Par clarabide dans le forum MATLAB
    Réponses: 1
    Dernier message: 05/12/2006, 09h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo