(Кроссплатформенность) Вопрос по компиляции файлов для обоих MT

 
Доброго времени суток! Почитал различную информацию по кроссплатформенным роботам, и решил пробовать написать простецкого робота,но чтоб был именно кроссплатформенным. Программированием на mql занимаюсь около полугода, но интересно написать программу, работающую на двух терминалах. Я как-то не пойму смысл кроссплатформенности, если один и тот файл придется компилировать для каждого терминала со своим расширением. Или я чего-то неправильно понял? Объясните, как скомпилировать правильно файл, чтоб подходил для двух терминалов? Или все-же придется брать файл,компилировать его под mt4, а потом под mt5 ?
 
Да, нужно брать код и компилировать под разные терминалы. Смысл кроссплатформенности в том, что не нужно переписывать код. Компиляция - дело недолгое, в отличие от доработки кода.
 
Monter10000:
Доброго времени суток! Почитал различную информацию по кроссплатформенным роботам, и решил пробовать написать простецкого робота,но чтоб был именно кроссплатформенным. Программированием на mql занимаюсь около полугода, но интересно написать программу, работающую на двух терминалах. Я как-то не пойму смысл кроссплатформенности, если один и тот файл придется компилировать для каждого терминала со своим расширением. Или я чего-то неправильно понял? Объясните, как скомпилировать правильно файл, чтоб подходил для двух терминалов? Или все-же придется брать файл,компилировать его под mt4, а потом под mt5 ?

Смысл в том, что программный код остается неизменным, надо только при компиляции указывать платформу для которой будет скомпилирован исполняемый код. 

 
Vitalii Ananev:

Смысл в том, что программный код остается неизменным, надо только при компиляции указывать платформу для которой будет скомпилирован исполняемый код. 

воспользуйтесь готовыми библиотеками или напишите свою.
 
Alexandr Gavrilin:
воспользуйтесь готовыми библиотеками или напишите свою.

??????? Вы наверно хотели ответить топик стартеру. 

 
Vitalii Ananev:

Смысл в том, что программный код остается неизменным, надо только при компиляции указывать платформу для которой будет скомпилирован исполняемый код. 

Так вот я и спрашиваю об указании платформы. Возможно ли написать один файл, чтоб подходил под обе платформы? То есть чтоб не приходилось менять расширение.

 
Ihor Herasko:
Да, нужно брать код и компилировать под разные терминалы. Смысл кроссплатформенности в том, что не нужно переписывать код. Компиляция - дело недолгое, в отличие от доработки кода.

Не легче ли тогда просто создать два отдельных файла одного и того-же советника,один под mt4,другой под mt5 ? Я думал кроссплатформенность,это не только код подходящий под оба терминала! Но так-же при кроссплатформенности отпадет необходимость менять расширение файла под разные терминалы.

 
Alexandr Gavrilin:
воспользуйтесь готовыми библиотеками или напишите свою.

Спасибо! Попробую для начала воспользоваться конечно готовыми библиотеками. Дальше видно будет,стоит ли связываться с этой кроссплатформенностью?!

 
Monter10000:

Не легче ли тогда просто создать два отдельных файла одного и того-же советника,один под mt4,другой под mt5 ? Я думал кроссплатформенность,это не только код подходящий под оба терминала! Но так-же при кроссплатформенности отпадет необходимость менять расширение файла под разные терминалы.

Не легче )) Ведь проще поддерживать один код, чем два.

 
Monter10000:

Так вот я и спрашиваю об указании платформы. Возможно ли написать один файл, чтоб подходил под обе платформы? То есть чтоб не приходилось менять расширение.

Вы имеете в виду опцию выбора платформы в самом компиляторе? Такого не предусмотрено. Расширение файла указывает для какой платформы необходимо компилировать код. В mql (хоть и используется один и тот же компилятор) нет кроссплатформенности в классическом его понимание. Кроссплатформенность достигается путем подключения дополнительных библиотек реализующих такой функционал. 

 
всё равно приходится проверять код в каждой платформе.. бывают нюансы. отличия есть 4/5. 
простые примеры: есть функции которых нет в 4, различия в работе с данными индикаторов и таймсериями, направления массивов в разную сторону. и это только то что вспоминается..
Причина обращения: