Как скомпилировать MQL5 в сторонней программе Netbeans (Eclipse)?

 

Здравствуйте. Пишу достаточно крупный кусок кода на MQL5, поэтому решил максимально систематизировать разработку. Сейчас генерирую классы из UML через Umbrello. Дальше разрабатываю в NetBeans. Автодополнение, нахождение ошибок, навигация по коду, все работает отлично - разрабатывать очень удобно.

Но не компилируется.  

Для запуска дебага, нужно как-то запустить и собрать код. Подскажите, пожалуйста, как это лучше сделать? Я не очень селен в сборке и других связанных с этим темах, обычно собирал все программы с++ на gcс с стандартными параметрами. Я так понимаю есть компилятор MQL5 mql64.exe. Я его могу указать как стандартный компилятор С++. Что тогда мне указывать как сборщик? Для запуска нужно еще указывать обязательно что то для Make и отладчика. Если я указываю mql64.exe, то конечно ничего не собирается, выдает такой код:

MQL4/MQL5 Compiler x64 build 1101 (27 Mar 2015)
Copyright 2001-2015, MetaQuotes Software Corp.
-f : information: Compiling '-f'
(1,1) : error 208: no executable file produced
(0,0) : error 135: can't open "-f" program file
 : information: Result 2 error(s), 0 warning(s)
Time: 16 ms

СОБРАТЬ FAILED (значение выхода -1,, общее время: 74ms)

Скорее всего глупо было туда указывать компилятор, но подскажите, пожалуйста, может кто разрабатывает не в стандартном редакторе MQL5? Что использовать в таких случаях, что указывать? А то не хочется писать в NetBeans, а потом открывать MetaEditor и там все компилировать, хотя есть подозрения, что так и придется делать.

 

Укажите в свойствах компилятора что то типа:

D:\MT5\mql64.exe "%f"
где диск и папка ваши конечно. Может быть пригодится.
 
Andrey Dik:

Укажите в свойствах компилятора что то типа:

Прочитал всю вашу ведку по SlickEdit - спасибо огромное за проделанный труд, многие мелочи взял для себя. К сожалению NetBeans не дает указать параметры при вызове компилятора. Странно почему не хочет, но ругается и на "%f" и на '-f'.
 

Denis Savenko:
Прочитал всю вашу ведку по SlickEdit - спасибо огромное за проделанный труд, многие мелочи взял для себя. К сожалению NetBeans не дает указать параметры при вызове компилятора. Странно почему не хочет, но ругается и на "%f" и на '-f'. 

Приветствую Вас. Удалось ли решить сабж? Очень интересует тема. К сожалению гугление в течение почти cуток не дало результатов ... :-(, т.е. информации НОЛЬ, а хотелось бы работать в привычном окружении NetBean.
 
Denis Savenko:
Прочитал всю вашу ведку по SlickEdit - спасибо огромное за проделанный труд, многие мелочи взял для себя. К сожалению NetBeans не дает указать параметры при вызове компилятора. Странно почему не хочет, но ругается и на "%f" и на '-f'.
Может, пригодится мой опыт. Из NetBeans  не компилировал, использовал Visual Studio со сторонними компиляторами, в т.ч. МТ4. Тоже были проблемы с параметрами, решил созданием .cmd файла и уже его вызывал из студии. 
 
Alexey Volchanskiy:
Может, пригодится мой опыт. Из NetBeans  не компилировал, использовал Visual Studio со сторонними компиляторами, в т.ч. МТ4. Тоже были проблемы с параметрами, решил созданием .cmd файла и уже его вызывал из студии. 

Спасибочки Вам, огромненькОЕ! :-)

Мысль простенькая, но в мою затуманенную голову почему то не пришла, увы.

Однако, проблему так и решил, с Вашей помощью!

 

Вот такой батничек вызываю в качестве C++ компайлера:

set WD=%CD%

cd ..

mql64.exe  /i:%CD% %WD%\%~4 

Назвал это чудо: cmql64.bat и положил его в поддиректорию "MQL4", каталога данных терминала MT4/

А строка - "Компилятор С++" в меню "Сервис\С++\Средства сборки\"  соответственно, выглядит так:

C:\[Ваш путь к каталогу данных терминала]\MQL4\cmql64.bat 

Ну и в закладке "Сервис\С++\Прочее\" важно не забыть добавить расширения: "mq4, mq5 и mqh", это чтобы NetBean думал, что он работает с C++, когда вы открываете файлы MQL.

------------------------------------------------------

Этот костылина работает. Что собственно и требовалось. Теперь можно писать и компилить все mql-ки непосредственно в NetBean. 

 
dmneedall2:

Ну и в закладке "Сервис\С++\Прочее\" важно не забыть добавить расширения: "mq4, mq5 и mqh", это чтобы NetBean думал, что он работает с C++, когда вы открываете файлы MQL.

Рад был немного помочь ) И в студии такая же фишка, добавляешь эти расширения к С++ - ным и все, студия парсит и подсвечивает их, как родные.
 

У меня в блоге есть кое-что по теме. Компиляция через сочетание клавиш -

https://www.mql5.com/ru/blogs/post/656491 

Обживаем компилятор MQL5
Обживаем компилятор MQL5
  • 2015.12.05
  • Igor Volodin
  • www.mql5.com
В этом посте речь пойдет о работе с компилятором MQL5 из командной строки. Отдельный компилятор может быть полезен, например, при использовании внешнего редактора. Преамбула После очередного...
 

Вместо отдельного компилятора теперь нужно использовать штатный metaeditor.exe, который понимает запуск с командной строки и работает как консольный компилятор.

Документацию с примерами обновим

 
Renat Fatkhullin:

Вместо отдельного компилятора теперь нужно использовать штатный metaeditor.exe, который понимает запуск с командной строки и работает как консольный компилятор.

Документацию с примерами обновим

А с четверкой какая ситуация? Помню, давно компилятор был только в редакторе, потом вынесли отдельно.
 
Renat Fatkhullin:

Вместо отдельного компилятора теперь нужно использовать штатный metaeditor.exe, который понимает запуск с командной строки и работает как консольный компилятор.

Документацию с примерами обновим

"Нужно"? Отдельного компилятора теперь не будет?
Причина обращения: