Форум программистов, компьютерный форум, киберфорум
Наши страницы
Matlab
Войти
Регистрация
Восстановить пароль
 
 
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
#1

Создание exe файла в MatLab - Matlab

01.07.2013, 15:28. Просмотров 83467. Ответов 140
Метки нет (Все метки)

Много раз народ спрашивал, как сделать exe файл в MatLab и возможно ли запустить свою программу, не используя сам MatLab. Привожу простенький метод создания экзешников.

Для теста я взял программу подсчёта полож/отриц/нулей среди задаваемых чисел с простейшим интерфейсом.
Создание exe файла в MatLab)
Оформляем наш код как функцию и запускаем deploytool, во всплывающем окне выбираем стандартное приложение Windows и вводим название нашего проекта.
Создание exe файла в MatLab
Открывается наш проект. Здесь в поле main мы располагаем наш главный файл(функцию). В поле
вспомогательных файлов помещаются файлы с данными, к которым обращается программа, GUI файлы, функции, к которым в течение работы обращается главная программа или функции, не находящиеся в нужной директории, а также коды на C/C++, которые вы хотите скомпилировать и использовать в дальнейшем в вашем приложении. В нашем случаи есть только исполняющий файл-функция, поэтому это поле остаётся пустым.
Создание exe файла в MatLab
В разделе Package к стандартным создаваемым файлам добавляем установку MCR (MATLAB Component Runtime). Это полный набор dll-библиотек для поддержки работы языка MatLab. Для этого жмём на Add MCR и выбираем встраивание библиотек в пакет.
Создание exe файла в MatLab
Теперь создаём наш составленный проект, нажимая на кнопку Build, а потом создаем пакет вспомогательных файлов, нажимая на кнопку Package. После этого в исходной папке появится файл с разрешением .prj и установочный экзешник для библиотек.
Создание exe файла в MatLab
Запускаем экзешник и после разархивирования устанавливаем MCR.
Создание exe файла в MatLab
Теперь наш экзешник окончательно готов. Для теста закрываем MatLab и запускаем программу.
Создание exe файла в MatLab
Как видно, всё прекрасно работает. Добавлю, что созданный нами exe можно запускать и на компьютерах, где не установлен сам MatLab. Для этого требуется лишь установить MCR перед запуском программы. (установочный файл находится в папке проекта).
Код файл-функции:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
function  Proga
clear all;close all;
name_peremennie={'Переменная 1:','Переменная 2:','Переменная 3:','Переменная 4:'};
peremennie_initial={'0','0','0','0'};
options.Resize='on';
options.WindowStyle='normal';
options.Interpreter='none';
Peremennie=inputdlg(name_peremennie,'Ввод переменных',1,peremennie_initial,options);
Pos_num=0;
Neg_num=0;
Zero_num=0;
for i=1:length(Peremennie)
    A(i)=str2num(Peremennie{i});
    if A(i)==0
        Zero_num=Zero_num+1;
    else
        if A(i)>0
          Pos_num=Pos_num+1;
        else
           Neg_num=Neg_num+1;
        end
    end
end
Answer1=cat(2,'Количество положительных переменных равно ',num2str(Pos_num));
Answer2=cat(2,'Количество отрицательный ',num2str(Neg_num));
Answer3=cat(2,'Количество нулей ',num2str(Zero_num));
msgbox({Answer1,Answer2,Answer3},'Ответ');
end
11
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2013, 15:28
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Создание exe файла в MatLab (Matlab):

Matlab gui открытие exe файла в программе
Такая роблема, когда откраваешь в .m файле то он запускает эти exe, но когда...

Создание exe файла
Подскажите,пожалуйста,как мне из созданного в Guide приложения создать ехе?...

Создание exe файла
Здравствуйте! Прочитал тему "Создание exe файла в MatLab", решил попробовать....

Создание exe-файла из GUI (GUIDE) приложения
В архиве форума не нашел ответ на вопрос о принципиальной возможности решения...

Exe файл matlab
Добрый вечер. На 32 разрядной системе (WinXP) стоит Matlab R2011b и студия...

Открытие файла Matlab 7.14 в Matlab 7.12
доброго всем вечера.такая вот проблемка.создал файл в матлабе,но в версии 7.14...

140
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 12:42  [ТС] #21
MCR стоит?
0
Зосима
4915 / 3284 / 308
Регистрация: 02.04.2012
Сообщений: 6,191
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 12:42 #22
Dimka_rtf, аналогичная фигня

Добавлено через 10 секунд
lomt, стоит
0
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 12:44  [ТС] #23
хмммм, надо разобраться всё-таки с этим глюком
0
tvoretsmira
457 / 447 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 12:46 #24
Если скомпилировано на win32, то на win64 не пойдёт, не говоря о Linux.
0
Зосима
4915 / 3284 / 308
Регистрация: 02.04.2012
Сообщений: 6,191
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 12:52 #25

Не по теме:

бггг столько проблем из-за такой маненькой программки



Добавлено через 6 минут
tvoretsmira, тут хотя бы допилить, чтоб на win32 запускалось
0
tvoretsmira
457 / 447 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 12:57 #26
Для новых версий матлаба MCRinstaller можно бесплатно скачать и так же бесплатно установить с официального сайта http://www.mathworks.com/products/compiler/mcr/
А для старой версии матлаба R2011b MCR 7.16 надо прилагать к откомпилированому файлу. Откомпилированый файл не запустится если будет установлена не та версия Matlab Compiler Runtime.
1
Зосима
4915 / 3284 / 308
Регистрация: 02.04.2012
Сообщений: 6,191
Записей в блоге: 15
Завершенные тесты: 1
03.07.2013, 14:25 #27
tvoretsmira, а если я откомпилирую с версией 7.10 и установлю MRC с сайта - программа запустится?
0
tvoretsmira
457 / 447 / 56
Регистрация: 28.05.2013
Сообщений: 699
03.07.2013, 16:12 #28
Нет
0
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
03.07.2013, 16:17  [ТС] #29
Как и сказано вот здесь: http://www.mathworks.com/matlabcentral/newsreader/view_thread/249680
Для нормальной работы нужно полное соотвествие, причём что более старые, что более свежие версии не важно
0
MurenaVrn
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 19
03.07.2013, 19:57 #30
Переставила MCRinstaller, приложение от lomt, компилируется и работает без проблем, моё всё равно не работает, точнее видимо не работают какие то конкретные функции, графические функции вывода работают, а вот расчёт нет
0
R2D2
884 / 795 / 110
Регистрация: 23.11.2012
Сообщений: 2,351
30.07.2013, 18:48 #31
Ура, товарищи! Я сегодня скомпилил свой первый екзешик. Решение было близко. А именно здесь.
Файлы
0
Зосима
30.07.2013, 21:31
  #32

Не по теме:

Dimka_rtf, боюсь верховные админы не одобрят ссылку на файлопомойку, да и 360 МБ качать как-то жоско

0
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
31.07.2013, 00:23  [ТС] #33
Цитата Сообщение от Dimka_rtf Посмотреть сообщение
Ура, товарищи! Я сегодня скомпилил свой первый екзешик. Решение было близко. А именно здесь.
Файлы
А чем отличается метод компилирования от предложенного мной?
0
R2D2
884 / 795 / 110
Регистрация: 23.11.2012
Сообщений: 2,351
31.07.2013, 12:04 #34
Цитата Сообщение от lomt Посмотреть сообщение
А чем отличается метод компилирования от предложенного мной?
Абсолютно ничем. Просто файл, который ты сбросил у меня упорно не запускался((
0
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
31.07.2013, 12:34  [ТС] #35
Цитата Сообщение от Dimka_rtf Посмотреть сообщение
Абсолютно ничем. Просто файл, который ты сбросил у меня упорно не запускался((
странно конечно...ну главное, что твой скомпилился!
0
AlexRPhys
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 7
31.07.2013, 15:38 #36
На Matlab R2010b все работает как надо.
0
R2D2
884 / 795 / 110
Регистрация: 23.11.2012
Сообщений: 2,351
31.07.2013, 17:12 #37
AlexRPhys, ты о компиляции или ты запускал то, что я скинул?
0
AlexRPhys
0 / 0 / 0
Регистрация: 15.07.2013
Сообщений: 7
01.08.2013, 07:00 #38
Я создал свой m. файл который строит графики и сделал из него exe.

Добавлено через 3 минуты
проделав конечно манипуляции которые описаны здесь
0
Зосима
02.08.2013, 19:50
  #39

Не по теме:

lomt, гляди, зернышки дают всходы!

0
lomt
449 / 275 / 13
Регистрация: 13.11.2012
Сообщений: 589
Записей в блоге: 1
05.08.2013, 10:52  [ТС] #40
Цитата Сообщение от Зосима Посмотреть сообщение
Не по теме:
lomt, гляди, зернышки дают всходы!

Не по теме:

Ага ага, это очень даже неплохо

0
05.08.2013, 10:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2013, 10:52
Привет! Вот еще темы с решениями:

Открытие файлов .exe в matlab
можно ли открыть файл ехе в матлабе так, чтобы он показал код этой программы на...

Matlab-ский exe-шник не запускается
Всем привет! Просили с учёбой помочь и принесли программу сделанную в...

Создание диаграмм в Matlab
Помогите, пожалуйста, построить совмещенную диаграмму, изображение которой...

Matlab создание графиков
задал в matlab переменные (картинка №1), прописал в m-file код уравнений, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru