Как написать софт под Windows и Linux?

Как написать софт под Windows и Linux?

Сообщение npa » 30 янв 2018, 19:08

michael-yurov писал(а):Сейчас у меня остро стоит вопрос - как написать ПО, чтобы его можно было запускать и на windows и Linux.
Вроде бы WinForms написанные под .NET на C# - должны даже exe открываться и запускаться силами Mono... Но что то не получается у меня.

В эту сторону не пробовал, предпочитаю WX/GTK/QT. Сейчас .NET продвигают помаленьку...хоть и старое но возможно будет полезно: https://www.ibm.com/developerworks/ru/l ... index.html. Могу помочь в тестировании, как будет время.
А расчёт ШД в Wine 1.8.7 запускается нормально. :)
npa
Новичок
 
Сообщения: 14
Зарегистрирован: 30 янв 2018, 08:20
Репутация: 0
Настоящее имя: Руслан

Re: SMD раскладчик для СтепМастеров

Сообщение SVP » 30 янв 2018, 19:48

michael-yurov писал(а):Сейчас у меня остро стоит вопрос - как написать ПО, чтобы его можно было запускать и на windows и Linux.
Вроде бы WinForms написанные под .NET на C# - должны даже exe открываться и запускаться силами Mono... Но что то не получается у меня.


Java однако...
SVP
Мастер
 
Сообщения: 5452
Зарегистрирован: 19 дек 2012, 15:49
Откуда: Москва
Репутация: 823

Re: SMD раскладчик для СтепМастеров

Сообщение michael-yurov » 30 янв 2018, 20:01

SVP писал(а):Java однако...
Не... слишком медленная зараза. Сильно бесит, когда простая программа тупит на ровном месте.
C# не намного лучше, конечно, но там хотя бы есть большие плюсы, за которые я готов жертвовать производительнсоть.

npa писал(а):WX/GTK/QT
Пока что для меня это набор букв. Буду изучать.
UPD посмотрел, что такое Qt. Кажется, что интересная и подходящая штука.
Узнал цену ($459.00 в месяц). Опечалился.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 11192
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 4431
Медальки:
Настоящее имя: Михаил Львович

Re: SMD раскладчик для СтепМастеров

Сообщение SVP » 30 янв 2018, 23:06

в GPL QT бесплатен вроде как...
SVP
Мастер
 
Сообщения: 5452
Зарегистрирован: 19 дек 2012, 15:49
Откуда: Москва
Репутация: 823

Re: SMD раскладчик для СтепМастеров

Сообщение michael-yurov » 30 янв 2018, 23:40

SVP писал(а):в GPL QT бесплатен вроде как...

Да, так и есть.
Только вот сомневаюсь я, что хочу делиться кодом программы...

А, вообще, Qt мне очень понравился. Буду изучать.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 11192
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 4431
Медальки:
Настоящее имя: Михаил Львович

Re: SMD раскладчик для СтепМастеров

Сообщение SVP » 31 янв 2018, 00:01

michael-yurov писал(а):
SVP писал(а):в GPL QT бесплатен вроде как...

Да, так и есть.
Только вот сомневаюсь я, что хочу делиться кодом программы...

А, вообще, Qt мне очень понравился. Буду изучать.


Если ты её собираешься продавать/поставлять, тогда да, придется покупать коммерческую лицензию.
Если для внутреннего употребления, то обязать тебя никто не вправе.

На самом деле костыли это всё сплошные.
В том смысле, что для того, чтобы было комфортней работать они там такого наворотили, после чего это уже
скорее кастрированная java нежели быстрый С++. Смысла не имеет особого.
С лицензиями большой гемморой, похоже даже имея коммерческую некоторые части ты трогать не вправе.
Все это имеет какой-то смысл для эмбеддед решений, но тоже не великий.
SVP
Мастер
 
Сообщения: 5452
Зарегистрирован: 19 дек 2012, 15:49
Откуда: Москва
Репутация: 823

Re: SMD раскладчик для СтепМастеров

Сообщение npa » 31 янв 2018, 08:21

michael-yurov писал(а):Только вот сомневаюсь я, что хочу делиться кодом программы...

Вообще от автора GPL этого и не требует, внезапно...А ещё есть BSD и другие совместимые. И ещё один момент: По LGPL лицензии вы можете создавать коммерческое ПО не открывая свои исходники, при условии, что вы не вносите изменения в исходный код самого Qt. То есть динамическая линковка.
А вообще не очень понял вашу модель. Вы же прикладываете программу к устройству? Соответственно смысл человеку применять копию, полученную не от вас или стороннюю программу? Вас же в продаже устройств никто не ограничивает.
npa
Новичок
 
Сообщения: 14
Зарегистрирован: 30 янв 2018, 08:20
Репутация: 0
Настоящее имя: Руслан

Re: Как написать софт под Windows и Linux?

Сообщение michael-yurov » 31 янв 2018, 09:52

Дошли руки до создания простенькой системы ЧПУ.
На днях сделал набросок интерфейса программы:
Как написать софт под Windows и Linux? экран 2.png

И сейчас думаю над вопросом - в чем писать ПО.
Изначально хотел под .NET C#, думал между WinForms и WPF (последний как нельзя лучше подходит под задачу).

Windows, конечно, многим привычен и удобен, но ЧПУ станки часто расположены на производстве, и устанавливать на них виндоус - проблемно. По этой причине думаю как бы сделать возможным работу с ПО под Linux.

Из важных аспектов:
- необходима возможность отображения траектории силами OpenGL.
- связь с железом контроллера по Ethernet
- интерфейс нужно будет сделать так, чтобы он корректно (без замыливания, диспропорций и пикселизации) масштабировался под разные разрешения и dpi экранов.

Прикрепил пару тестовых файлов, использующих отрисовку силами OpenGL (со сглаживанием, перспективой и туманом).
Вложения
Desktop.zip
(503.5 Кб) Скачиваний: 166
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 11192
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 4431
Медальки:
Настоящее имя: Михаил Львович

Re: Как написать софт под Windows и Linux?

Сообщение michael-yurov » 31 янв 2018, 10:08

SVP писал(а):Если ты её собираешься продавать/поставлять, тогда да, придется покупать коммерческую лицензию.
Если для внутреннего употребления, то обязать тебя никто не вправе.

Собираюсь продавать (вместе с платой контроллера). И не хочу, чтобы китайцы немного поправив ПО наклепали платы под мой софт.

SVP писал(а):На самом деле костыли это всё сплошные.
В том смысле, что для того, чтобы было комфортней работать они там такого наворотили, после чего это уже
скорее кастрированная java нежели быстрый С++. Смысла не имеет особого.
Мне производительность вычислительной части не очень важна. Нужно, чтобы запускалась и работала быстро. OpenGL чтобы работал. Удобные инструменты для работы с графикой для создания интерфейса.
npa писал(а):Вообще от автора GPL этого и не требует, внезапно...
Вот это я пока не совсем понимаю. А что же тогда требуют? За что они хотят 6000 баксов в год?

npa писал(а):И ещё один момент: По LGPL лицензии вы можете создавать коммерческое ПО не открывая свои исходники, при условии, что вы не вносите изменения в исходный код самого Qt. То есть динамическая линковка.

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

npa писал(а):А вообще не очень понял вашу модель. Вы же прикладываете программу к устройству? Соответственно смысл человеку применять копию, полученную не от вас или стороннюю программу? Вас же в продаже устройств никто не ограничивает.

Так, оно, прикладываю к устройству... Но китайцы с большой долей вероятности наклепают клонов, как они с НЦСтудией и ПланетЦНЦ сделали. C косяками, глюками, худшими характеристиками и ограниченными возможностями, но, за то, в 10 раз дешевле.

Вот - только вчера залил видео про сборку степмастеров, как сразу же узкоглазое "Мясо Мяу" ищет исходники для копирования платы.
Как написать софт под Windows и Linux? 2018-01-31_12-21-52.png
К слову - когда искал в Китае сборщиков для степмастеров - они сразу же требовали полный проект, включая прошивку, и потом еще месяц писали и названивали.
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 11192
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 4431
Медальки:
Настоящее имя: Михаил Львович

Re: Как написать софт под Windows и Linux?

Сообщение selenur » 31 янв 2018, 10:17

michael-yurov писал(а):Но китайцы с большой долей вероятности наклепают клонов, как они с НЦСтудией сделали.

И с planetCNC они так-же сделали, что теперь только на этом форуме каждый месяц десятки пользователей появляются, которые получили негативный опыт работы с контроллерами, и при этом компания planet-CNC тут не причем....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Аватара пользователя
selenur
Почётный участник
Почётный участник
 
Сообщения: 4296
Зарегистрирован: 21 авг 2013, 19:44
Откуда: Новый Уренгой
Репутация: 1510
Медальки:
Настоящее имя: Сергей

Re: Как написать софт под Windows и Linux?

Сообщение frezeryga » 31 янв 2018, 10:19

Для отдельных пользователей удобней и привычней винда но для производителей станков автоматом добавляется стоимость винды что делает систему дороже других которые работают на Linux.
Аватара пользователя
frezeryga
Почётный участник
Почётный участник
 
Сообщения: 13262
Зарегистрирован: 18 авг 2013, 16:08
Откуда: Жуковский
Репутация: 4617
Медальки:

Re: Как написать софт под Windows и Linux?

Сообщение michael-yurov » 31 янв 2018, 10:24

frezeryga писал(а):Для отдельных пользователей удобней и привычней винда но для производителей станков автоматом добавляется стоимость винды что делает систему дороже других которые работают на Linux.

А со степмастером ты mach3 используешь или LinuxCNC? Что мешает второму варианту?
Аватара пользователя
michael-yurov
Почётный участник
Почётный участник
 
Сообщения: 11192
Зарегистрирован: 26 июл 2012, 00:10
Откуда: Новоуральск, Свердловская область.
Репутация: 4431
Медальки:
Настоящее имя: Михаил Львович

Re: Как написать софт под Windows и Linux?

Сообщение frezeryga » 31 янв 2018, 10:28

Также Linux позволяет использовать набирающие популярность микрокомпьютеры которые стоят недопого и их удобно размещать в шкафу. Пример исполнения mycnc et6 очень удачный где компьютер крепится на плату контроллера а сам контроллер можно ставить на DIN рейку.
Аватара пользователя
frezeryga
Почётный участник
Почётный участник
 
Сообщения: 13262
Зарегистрирован: 18 авг 2013, 16:08
Откуда: Жуковский
Репутация: 4617
Медальки:

Re: Как написать софт под Windows и Linux?

Сообщение frezeryga » 31 янв 2018, 10:30

michael-yurov, со степмастером использую Linuxcnc. Но мы сейчас про новый софт.
Аватара пользователя
frezeryga
Почётный участник
Почётный участник
 
Сообщения: 13262
Зарегистрирован: 18 авг 2013, 16:08
Откуда: Жуковский
Репутация: 4617
Медальки:

Re: Как написать софт под Windows и Linux?

Сообщение Prav » 31 янв 2018, 10:43

michael-yurov писал(а):Windows, конечно, многим привычен и удобен, но ЧПУ станки часто расположены на производстве, и устанавливать на них виндоус - проблемно. По этой причине думаю как бы сделать возможным работу с ПО под Linux.

Я за то, чтобы не распыляться и не пытаться сделать под ВСЁ и сразу. Лучше сосредоточиться под одну операционку, лучше под Windows, потому как ты говоришь: "Windows, конечно, многим привычен и удобен...".
Аватара пользователя
Prav
Мастер
 
Сообщения: 442
Зарегистрирован: 14 июл 2015, 05:10
Откуда: Москва
Репутация: 79
Настоящее имя: Петр Раввинский

Re: Как написать софт под Windows и Linux?

Сообщение frezeryga » 31 янв 2018, 10:47

Только при работе на станке взаимодействия пользователя с операционной системой практически нету. У меня есть станки и с линукс и с виндой и папка куда кидать уп и там и там одинаковая.
Аватара пользователя
frezeryga
Почётный участник
Почётный участник
 
Сообщения: 13262
Зарегистрирован: 18 авг 2013, 16:08
Откуда: Жуковский
Репутация: 4617
Медальки:

Re: Как написать софт под Windows и Linux?

Сообщение Сергей Саныч » 31 янв 2018, 10:52

michael-yurov писал(а):ты mach3 используешь или LinuxCNC? Что мешает второму варианту?
Доступность альтернативных решений (аппаратных генераторов, плат ввода-вывода). В том числе не привязанных к LPT.
Чудес не бывает. Бывают фокусы.
Аватара пользователя
Сергей Саныч
Мастер
 
Сообщения: 8841
Зарегистрирован: 30 май 2012, 14:20
Откуда: Тюмень
Репутация: 2766
Медальки:

Re: Как написать софт под Windows и Linux?

Сообщение selenur » 31 янв 2018, 11:06

Если для разработки использовать Mono, то созданный проект нормально компилируется под 3 платформы, на скрине я для примера показал один и тот-же проект под Linux и windows:
Как написать софт под Windows и Linux? 2018-01-31_125943.jpg

Хотя конечно есть нюансы когда начинаешь использовать последовательные порты, сеть, и дрр...
Но везде есть свои сложности....
Мой сайт: http://selenur.ru
Исходники моих программ: https://github.com/selenur
Аватара пользователя
selenur
Почётный участник
Почётный участник
 
Сообщения: 4296
Зарегистрирован: 21 авг 2013, 19:44
Откуда: Новый Уренгой
Репутация: 1510
Медальки:
Настоящее имя: Сергей

Re: Как написать софт под Windows и Linux?

Сообщение npa » 31 янв 2018, 11:12

michael-yurov писал(а):Вот это я пока не совсем понимаю. А что же тогда требуют? За что они хотят 6000 баксов в год?

Речь о том что автор первичен, а вот те кто поделятся этим софтом нарушат GPL. А держатели QT...понять их можно, на зарубежные цены лицензия копеечная получается. Но если в саму библиотеку вы изменений не вносите и в варианте LGPL всё более-менее чисто. Более того можете просто организовать общение своего секретного кода с GUI так, чтобы не нарушалась GPL.
А так прекрасно понимаю...я потому не заказываю свои разработки в Китае - требуют весь проект.

Prav писал(а):Я за то, чтобы не распыляться и не пытаться сделать под ВСЁ и сразу.

Не всё и сразу а сделать вовремя. Проще сначала, чем потом портировать. И это ненамного сложнее, хотя чуть дольше при отсутствии опыта кросс-разработки. Я простые конфигураторы для своих устройств делал, работали и там и там. Правда тащили с собой GTK и Питон или WX.
selenur писал(а):Если для разработки использовать Mono, то созданный проект нормально компилируется под 3 платформы

Тоже вариант, кстати. Я за то чтобы поддержка в Linux различных аппаратных решений и вообще промышленного оборудования была шире. Сейчас появляется среда для ПЛК, а когда я начинал (после того как вирус в winXP уничтожил за день до сдачи мой курсач по C++ и я поставил ASP 9) - не было ни OCR, ни доступных CAD и т.д.
Последний раз редактировалось npa 31 янв 2018, 11:17, всего редактировалось 1 раз.
npa
Новичок
 
Сообщения: 14
Зарегистрирован: 30 янв 2018, 08:20
Репутация: 0
Настоящее имя: Руслан

Re: Как написать софт под Windows и Linux?

Сообщение SVP » 31 янв 2018, 11:16

npa писал(а): По LGPL лицензии вы можете создавать коммерческое ПО не открывая свои исходники, при условии, что вы не вносите изменения в исходный код самого Qt. То есть динамическая линковка.

Теоретически да. Практически так никто не делает.
Т.е. если говорить о лицензионной чистоте и гарантии того, что не будет проблем, по этому сценарию ничего этого нету.
Причем сами авторы QT об этом прямо пишут.

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

В вариатне ТС-а QT не вариант. Т.е. конечно, использовать можно, у нас вообще в стране не парятся о лицензировании. Но корректно воспользоваться бесплатной лицензией не выйдет.

Впрочем, если ТС более грамотен, чем "какие-то там иностранные юристы", он очевидно сам может решить для себя этот вопрос.
Однако я был-бы последним земляным червяком, если бы агитировал его за столь спорное решение.
Изначально я думал, что у него софт для личного внутреннего применения.

Инструментов для решения его задачи немного.
Я сам не любитель java, но всерьез посмотрел-бы можно-ли использовать её.
Опыт опять-таки говорит, что с запуском на различных устройствах у неё получше.
Java FX я правда пока не осилил, как-то после wpf там с биндингом непонятно, но разобраться я уверен можно.
Приложение написанное со свингом (давно дело было) работало под win, под linux, и вот сейчас его допилили и оно работает вообще внутри линукса на ксайлинксе, даже без gpu итп, причем с минимумом переделок.

Небольшой опыт использования QT показал, что неприятные косяки лезут прям при переносе win->linux. Т.е. под виндой работает одним образом, под линуксом уже немного другим... высокой производительности при использовании qml не ждите...
Последний раз редактировалось SVP 31 янв 2018, 11:26, всего редактировалось 1 раз.
SVP
Мастер
 
Сообщения: 5452
Зарегистрирован: 19 дек 2012, 15:49
Откуда: Москва
Репутация: 823

След.

Вернуться в Оффтоп

Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], calabr, evgenymcp, Google [Bot], Majestic-12 [Bot], maksland, Yandex [bot], Валерий78

cron
Reputation System ©'