Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 18.11.19 17:00
Оценка:
Всем привет,

Конечно, это может быть ошибкой писать именно в этот раздел, но тем не менее.

Пользователи уговорили портировать продукт на linux. Начал разработку в убунте, дело вроде идет.

Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?

Хочу спросить коллег, кто продает продукты под linux, с какими проблемами столкнулись, как собираете бинарники?

Спасибо!
Re: Shareware for linux: технические моменты
От: Nonmanual Worker  
Дата: 18.11.19 17:35
Оценка:
Подпишусь. Тоже когда-нибудь дойду до этого. Но у меня все хуже, платформа .Net
Re[2]: Shareware for linux: технические моменты
От: Sharov Россия  
Дата: 18.11.19 17:40
Оценка:
Здравствуйте, Nonmanual Worker, Вы писали:

NW>Подпишусь. Тоже когда-нибудь дойду до этого. Но у меня все хуже, платформа .Net


Core же, или у Вас винформс? Вроде и его сделали кроссплатформенным?
Кодом людям нужно помогать!
Re[3]: Shareware for linux: технические моменты
От: Nonmanual Worker  
Дата: 18.11.19 17:49
Оценка:
Здравствуйте, Sharov, Вы писали:
S>Core же, или у Вас винформс? Вроде и его сделали кроссплатформенным?
.Net Framework с Winforms GUI компонентами сторонними.
Все дело упирается в отсутствие нормального кроссплатформенного GUI.
Re: Shareware for linux: технические моменты
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 18.11.19 17:51
Оценка: 4 (1)
Здравствуйте, Unhandled_Exception, Вы писали:

U_E>Всем привет,


U_E>Конечно, это может быть ошибкой писать именно в этот раздел, но тем не менее.

У тебя девелоперская либо которая используется с при разработке или как это выглядит? Можно попробовать докер если позволяет приложение.

U_E>Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?

Оно +- везде будет работать если отдать .so файлы. Можно собрать под LTS версии 16 и 18, и на этом остановится. По запросу пересобрать под таргет платформу. Если у тебя некая либа которая работает в отдельном процессе, то можно использовать dbus и через него общаться с тем что надо заказчику, самому же тащить все зависимость в /usr/local/lib. Если дальше идти, то ты можешь поднять свой репозиторник и аутентификацией и доступом раздвая обновления, порты на новые версии линукса +- оттуда.

U_E>Хочу спросить коллег, кто продает продукты под linux, с какими проблемами столкнулись, как собираете бинарники?

Я не продаю. В конторе просто одна ОС и та центос, но пакетируем в рпм и ставим со своего репо.
Sic luceat lux!
Re: Shareware for linux: технические моменты
От: Anton Batenev Россия https://github.com/abbat
Дата: 18.11.19 18:48
Оценка: 4 (1)
Здравствуйте, Unhandled_Exception, Вы писали:

UE> Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?


* Распространять в исходниках (самый правильный вариант).
* Собирать статически.
github.com/abbat
Re: Shareware for linux: технические моменты
От: Черный Властелин Австралия https://www.softperfect.com
Дата: 18.11.19 23:14
Оценка: 4 (1) +1
Здравствуйте, Unhandled_Exception, Вы писали:
U_E>Конечно, это может быть ошибкой писать именно в этот раздел, но тем не менее.
U_E>Пользователи уговорили портировать продукт на linux. Начал разработку в убунте, дело вроде идет.
U_E>Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?
U_E>Хочу спросить коллег, кто продает продукты под linux, с какими проблемами столкнулись, как собираете бинарники?

У нас несколько продуктов кросс-платформены и собираются в тч под линух, например порт маппер.

В целом жить можно, используется Lazarus в кач-ве среды разработки. Проблемы бывают разные, например только привязались к openssl1.0.0, его выкидывают из последней убунты и поставить из репо нельзя — только openssl1.1.0. Отдельный геморой с иконкой в трее, на каких-то DE это работает, на каких-то нет.

Другое дело что хз сколько там среди них покупателей, если портировать на что-то кроме винды, то имеет смысл начинать с macOS — там больше денег, юзеров и нет зоопарка дистрибутивов.
Re: Shareware for linux: технические моменты
От: rudzuk  
Дата: 19.11.19 07:27
Оценка: 2 (1)
Здравствуйте, Unhandled_Exception, Вы писали:

UE> Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?


Использовать Snap, Flatpack или AppImage.
avalon/2.0.6
Re: Shareware for linux: технические моменты
От: Stanislav V. Zudin Россия  
Дата: 19.11.19 07:43
Оценка: 4 (1)
Здравствуйте, Unhandled_Exception, Вы писали:

U_E>Хочу спросить коллег, кто продает продукты под linux, с какими проблемами столкнулись, как собираете бинарники?


Не так давно задавал подобный вопрос.
здесь
Автор: Stanislav V. Zudin
Дата: 05.11.18


Но у нас в линюхе нет мордочки, что значительно упрощает жизнь.
_____________________
С уважением,
Stanislav V. Zudin
Re[4]: Shareware for linux: технические моменты
От: Sharowarsheg  
Дата: 19.11.19 07:48
Оценка:
Здравствуйте, Nonmanual Worker, Вы писали:

S>>Core же, или у Вас винформс? Вроде и его сделали кроссплатформенным?

NW>.Net Framework с Winforms GUI компонентами сторонними.
NW>Все дело упирается в отсутствие нормального кроссплатформенного GUI.

Mono работает, если нет сторонних компонентов. Я даже проверил, и даже работает, другое дело, что продавать не стал, по крайней мере пока.
Re[2]: Shareware for linux: технические моменты
От: #John Европа https://github.com/ichensky
Дата: 19.11.19 10:26
Оценка: 2 (1)
Здравствуйте, rudzuk, Вы писали:

R>Использовать Snap, Flatpack или AppImage.

+ docker
Підтримати Україну у боротьбі з країною-терористом.

https://prytulafoundation.org/
https://u24.gov.ua/

Слава Збройним Силам України!!! Героям слава!!!
Re: Shareware for linux: технические моменты
От: Эйнсток Файр Мухосранск Странный реагент
Дата: 19.11.19 13:17
Оценка:
Я считаю тебе вот в эту ветку надо сходить почитать:
http://rsdn.org/forum/flame.comp/7591650.all
Автор: vsb
Дата: 17.11.19


А потом распространять твоё приложение через Web.

Масса достоинств:
1) кросплатформенность
2) работает на Android
3) тяжело выкопировать из приложения контент
4) часть логики можно оставить на сервере
5) готовые рынки приложений для монетизации
Re: Shareware for linux: технические моменты
От: CRT  
Дата: 19.11.19 15:13
Оценка:
Я просто адаптировал под WINE. (Было несколько моментов из-за которых не работало под вайном)
Re[2]: Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 19.11.19 15:20
Оценка:
Здравствуйте, Kernan, Вы писали:

U_E>>Смущает только один момент. Как я понимаю, нельзя просто так собрать бинарники, чтобы они везде работали. Как же быть?

K>Оно +- везде будет работать если отдать .so файлы. Можно собрать под LTS версии 16 и 18, и на этом остановится.

Пытаюсь понять, как это работает. Так-то я под виндой всю жизнь сидел. Как я понимаю, .so это вроде DLL-ек. По идее надо так собрать все бинарники, чтобы они использовали те *.so, которые есть на клиентской машине.
Re[2]: Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 19.11.19 15:22
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB> * Распространять в исходниках (самый правильный вариант).


Понимаю, что это отвечает духу, но не могу, к сожалению.

AB> * Собирать статически.


Может подкинешь ссылку на мануал, что иметь в виду, какие подводные камни?
Re[2]: Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 19.11.19 15:24
Оценка:
Здравствуйте, Черный Властелин, Вы писали:

ЧВ>В целом жить можно, используется Lazarus в кач-ве среды разработки.


Я на С++, так что взял vscode. А для UI думаю взять electron, но пока до UI не дошел.

ЧВ>Проблемы бывают разные, например только привязались к openssl1.0.0


А нельзя ее таскать с собой, как мы бы это делали под виндой?

ЧВ>Другое дело что хз сколько там среди них покупателей, если портировать на что-то кроме винды, то имеет смысл начинать с macOS — там больше денег, юзеров и нет зоопарка дистрибутивов.


У меня продукт для разработчиков, для маков запросов вообще не было.
Re[2]: Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 19.11.19 15:31
Оценка:
Здравствуйте, Stanislav V. Zudin, Вы писали:

SVZ>Не так давно задавал подобный вопрос.

SVZ>здесь
Автор: Stanislav V. Zudin
Дата: 05.11.18


Почитал. Мда, как все не просто.
Re[3]: Shareware for linux: технические моменты
От: rudzuk  
Дата: 19.11.19 15:39
Оценка:
Здравствуйте, Unhandled_Exception, Вы писали:

UE> Пытаюсь понять, как это работает. Так-то я под виндой всю жизнь сидел. Как я понимаю, .so это вроде DLL-ек. По идее надо так собрать все бинарники, чтобы они использовали те *.so, которые есть на клиентской машине.


Не заморачивайся с песочницами, возьми AppImage и получишь переносимый, работающий везде монолит.
avalon/2.0.6
Re[4]: Shareware for linux: технические моменты
От: Unhandled_Exception Россия  
Дата: 19.11.19 15:42
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Не заморачивайся с песочницами, возьми AppImage и получишь переносимый, работающий везде монолит.


У меня отладчик, который должен грузить мою *.so в отлаживаемый процесс, чтобы перехватывать функции типа malloc / free. Подозреваю, что AppImage сам перехватывает вызовы (не уверен). В принципе я уже готов отказаться от C++ в пользу обычного С, если есть гарантия, что я смогу собирать бинарники на одной машине, и это будет работать всюду (или почти всюду).
Re[5]: Shareware for linux: технические моменты
От: rudzuk  
Дата: 19.11.19 15:57
Оценка: 2 (1)
Здравствуйте, Unhandled_Exception, Вы писали:

UE> У меня отладчик, который должен грузить мою *.so в отлаживаемый процесс, чтобы перехватывать функции типа malloc / free. Подозреваю, что AppImage сам перехватывает вызовы (не уверен). В принципе я уже готов отказаться от C++ в пользу обычного С, если есть гарантия, что я смогу собирать бинарники на одной машине, и это будет работать всюду (или почти всюду).


AppImage это просто образ squashfs монтируемый FUSE. Для юзера все прозрачно и нет задержки при запуске, как у snappy, например. Есть полный доступ к системе (snap vs AppImage).
avalon/2.0.6
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.