Comment créer un exécutable.fichier exe de.m fichier

je me demandais s'il y avait un moyen de créer un '.exe fichier de".m ' file dans matlab, de sorte qu'il puisse être exécuté dans une machine qui n'a pas MATLAB ( comme il peut être fait en C, C++) Je sais que l'écriture D'une fonction MATLAB est une façon, mais je ne suis pas sûr qu'elle puisse fonctionner dans machine sans MATLAB.

aussi je voudrais cacher mon code et juste créer un script qui peut être exécuté par un utilisateur en utilisant ses propres fichiers de données.

26
demandé sur Vass 2009-12-18 06:26:29

8 réponses

le compilateur Matlab est la méthode standard pour le faire. mcc est la commande. L'exécution de Matlab est nécessaire pour exécuter les programmes; Je ne suis pas sûr qu'elle puisse être directement intégrée à l'exécutable ou non.

22
répondu phoebus 2009-12-18 04:48:59

si vous avez compilateur MATLAB installé, il y a une option GUI pour compiler. Essayez d'entrer

deploytool

en ligne de commande. Mathworks fait un très bon travail en documentant comment l'utiliser dans ce tutoriel vidéo: http://www.mathworks.com/products/demos/compiler/deploytool/index.html

aussi, si vous voulez inclure des entrées utilisateur telles que le choix d'un fichier ou d'un répertoire, regardez dans

uigetfile % or uigetdir if you need every file in a directory

à utiliser en conjonction avec

guide
9
répondu Doresoom 2009-12-18 19:47:44

, Essayez:

mcc -m yourfile

Voir aussi help mcc

6
répondu Andreas Bonini 2009-12-18 03:32:40

si votre code est plus une routine d'analyse de données (vs. visualisation / GUI), essayez GNU Octave . Il est gratuit et beaucoup de ses fonctions sont compatibles avec MATLAB. (Pas 100% mais peut-être 99,5%.)

2
répondu Jason S 2009-12-18 15:45:39

il était autrefois possible de compiler Matlab en C avec des versions plus anciennes de Matlab. Découvrez d'autres outils que Matlab vient avec.

le plus récent code Matlab peut être exporté sous forme de jar Java ou de Dll.net, etc. Vous pouvez alors écrire un exécutable contre cette bibliothèque - il sera obscurci d'ailleurs. Les utilisateurs devront installer disponible gratuitement Matlab Exécution.

comme d'autres l'ont mentionné, mcc / mcc.exe est ce que vous voulez convertir code matlab en C code.

1
répondu Hamish Grubijan 2009-12-18 03:33:43

Le "Autonome" méthode pour compiler .m fichier (ou fichiers) nécessite un ensemble de bibliothèque Matlab publiée (.dll) fichiers sur une plate-forme cible (non-Matlab) pour permettre l'exécution du compilateur généré .EXE.

consultez le site principal de MATLAB pour leurs produits de compilation et leurs limites.

1
répondu Francis 2015-05-11 19:34:24
mcc -?

explique que la syntaxe à faire *.exe (application autonome) avec *.m est:

 mcc -m <matlabFile.m> 

par exemple:

mcc -m file.m

va créer un fichier.exe dans le répertoire courant.

1
répondu Nicolas Verhelst 2018-06-20 08:22:26

j'ai développé un logiciel non-matlab pour la compilation directe de M-files ( TMC Compiler ). Il s'agit d'un convertisseur open-source des projets M-files vers C. le compilateur produit le code C qui peut être relié à une bibliothèque d'exécution open-source fournie pour produire une application autonome. La bibliothèque implémente un ensemble de fonctions d'intégration; les opérations d'algèbre linéaire utilisent le code LAPACK. Il est possible d'étendre l'ensemble des fonctions d'intégration par une mise en œuvre personnalisée comme décrit dans la documentation.

0
répondu csafonov 2016-12-06 17:27:04