LINUX.ORG.RU

Разработка коммерческого ПО с Qt

 ,


2

5

Вопрос по лицензии LGPL Qt. Можно-ли разрабатывать коммерческое ПО с использованием библиотек Qt без модификации последней, просто использо- вать ее? Эта лицензия вроде-бы разрешает... В вики пишут: существенно, чтобы при этом был обеспечен механизм по обновлению Qt. Я так понимаю,-через компановку статических или динамических библиотек? Я бы хотел статический вариант. Код ПО,разумеется,будет закрытым. Что-то сомнения одолевают.


Статическая линковка запрещена. Только динамическая и без модификации исходников. Если нужна статическая линковка с Qt, то надо покупать лицензию разработчика. И тогда хоть линкуй статически, хоть умодифицируйся без открытия изменений.

Линкуй динамически, делай windeployqt и все библиотеки сложатся куда надо.

grondek
()
Последнее исправление: grondek (всего исправлений: 2)
Ответ на: комментарий от grondek

Альтернативой... является разрешение для статической библиотеки, если предоставлены либо исходный код, либо приспособленные для связывания объектные файлы.-из wiki.Как насчет этого?... Значит,статическая линковка,все таки, не запрещена?

can
() автор топика
Ответ на: комментарий от grondek

Статическая линковка запрещена.

Нет. Достаточно предоставить объектные модули заказчику, чтобы он при необходимости мог слинковать их с другой версией Qt.

hobbit ★★★★★
()
Ответ на: комментарий от grondek

Статическая линковка запрещена. Только динамическая и без модификации исходников. Если нужна статическая линковка с Qt, то надо покупать лицензию разработчика. И тогда хоть линкуй статически, хоть умодифицируйся без открытия изменений.

Не ври. Статически линковать можно, если предотавить пользователям инструменты для пересборки с изменённой версией Qt (читай — объектные файлы своего барахла и мейкфайл).

ChALkeR ★★★★★
()

Даже на этом форуме уже обсуждали 100500 раз. Откуда вы вылазите?

RazrFalcon ★★★★★
()

Лицензия Qt не запрещала коммерческое ПО, даже когда она была GPL. Просто нужно предоставить всем пользователям полные исходные тексты на условиях лицензии GNU GPL, а коммерческое ПО или нет не важно.

Проприетарное и коммерческое ПО — это как солёное и красное. Не пересекающиеся категории. Солёное может быть красным, а может и не быть и красное может быть или солёным или нет.

Xenius ★★★★★
()
Последнее исправление: Xenius (всего исправлений: 1)
Ответ на: комментарий от can

чтобы не выдавать исходники.

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

Xenius ★★★★★
()
Ответ на: комментарий от ChALkeR

Статически линковать можно, если предотавить пользователям инструменты для пересборки с изменённой версией Qt (читай — объектные файлы своего барахла и мейкфайл).

Но можно предоставить и не объектные, а исходные файлы и это будет гораздо лучше и удобнее.

Xenius ★★★★★
()
Ответ на: комментарий от Xenius

Проприетарное и коммерческое ПО — это как солёное и красное. Не пересекающиеся категории.

Наоборот же — пересекающиеся.

--
Ваш буквоед.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 1)
Ответ на: комментарий от grondek

Статическая линковка запрещена. Только динамическая и без модификации исходников.

Про статическую компоновку уже сказали, а про «без модификации» — забыли, а меж тем, это куда более вызывающая ложь. Разумеется, вы в полном праве изменять любую свободную программу под свои нужды.

Zmicier ★★★★★
()

Зачем тебе вообще статически линковать?

Deleted
()

Кратко: используй смело, линкуй динамически.

Я знаю одних кретинов в одной конторе, которые отказались от Qt (во времена когда появилась опция LGPL) потому что один дятел плохо умел либо читать либо понимать условия LGPL. Не повторяй их ошибку.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от Zmicier

Разумеется, вы в полном праве изменять любую свободную программу под свои нужды.

+1, внес дополнения в Qt Core и опубликовал изменения. Всё.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от Zmicier

Года 2-3 назад был запрет на модификацию без открытия исходников при использовании в проприетарщине. Если покупал лицензию разработчика, то хоть заизменяйся без открытия.

Я писал об этом.

grondek
()
Ответ на: комментарий от can

Прежде всего надо научиться читать и прочитать условия лицензии LGPL. А после этого спокойно выпускать своё платное ПО с закрытыми исходниками на базе Qt/LGPL.

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от grondek

Года 2-3 назад был запрет на модификацию без открытия исходников при использовании в проприетарщине.

Что такое «открытие исходников»?

В том виде, в каком вы это изложили в первом письме («Только динамическая [компоновка] и без модификации исходников. [Иначе —] надо покупать лицензию разработчика»), — это нонсенс, поскольку GNU Lesser GPL как таковая (а равно и любая свободная лицензия по определению) разрешают вам изменять программу. Отобрать это право у вас никто не может.

Zmicier ★★★★★
()
Последнее исправление: Zmicier (всего исправлений: 2)
Ответ на: комментарий от Zmicier

Речь шла о линковке Qt и проприетарной программы. У них же несколько лицензий в зависимости от того будет программа, использующая Qt иметь открытые или закрытые исходники, а также, купил ли ты лицензию разработчика.

И там были нюансы с линковкой Qt и разрабаоываемого ПО, а также разрешения/запрещения на модификацию исходников Qt без открытия этих изменений.

grondek
()
Ответ на: комментарий от grondek

Речь шла о линковке Qt и проприетарной программы.

Так.

У них же несколько лицензий

Да, сейчас: GNU Lesser GPLv3, GNU GPLv2 (частично) или несвободная.

в зависимости от того будет программа, использующая Qt, иметь открытые или закрытые исходники

Нет, не имеют эти ваши «исходники» значения.

И там были нюансы с линковкой Qt и разрабаоываемого ПО, а также разрешения/запрещения на модификацию исходников Qt без открытия этих изменений

Раньше? Раньше Qt была под GNU Lesser GPLv2.1 или несвободной лицензией, раньше — под GNU GPLv2 или несвободной лицензией, а еще раньше — под QPL или несвободной лицензией,

Про GNU LGPL уже все сказали. При GNU GPL у вас вовсе не было права компоновать Qt с несвободной работой, так что вопрос, можно ли модифицировать — бессмысленен. А если вы вспоминаете старую недобрую QPL (которая никак не «года два–три тому назад», а все 15), то и там такого ограничения не было, да и быть не могло, с учетом того, что при всех своих закидонах эта лицензия все-таки была свободна. Вероятно, вас сбил с толку ключевой из таковых — требование распространять изменения в исходной форме только отдельными файлами (≈ заплатками). К об’ектной форме этот бзик, разумеется, не относился. Плюс, в QPL было некое подобие авторского лева курильщика, так что вы скорее всего вовсе не стали бы тогда использовать Qt в своей проприетарщине без приобретения персональной лицензии.

Итого — «нюансы», что вы вспоминаете («Только динамическая [компоновка] и без модификации исходников. [Иначе —] надо покупать лицензию разработчика»), никогда не существовали.

Zmicier ★★★★★
()
Ответ на: комментарий от Xenius

Просто нужно предоставить всем пользователям полные исходные тексты на условиях лицензии GNU GPL

Да ты юморист

annulen ★★★★★
()

2 all: что вы человека пугаете? Вам мало кучи вин-онли шлака?

Автор темы уже понял, что он просто берет Qt с официального сайта (из раздела opensource) и создает свои закрытые платные программы и радуется жизни. Такие программы изначально будут получаться динамически слинковаными а потому платить не надо.

Я бы хотел статический вариант. Код ПО,разумеется,будет закрытым. Что-то сомнения одолевают.

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

Либо плати либо динамическая линковка - я бы выбрал второй бесплатный вариант.

I-Love-Microsoft ★★★★★
()

Забавно, когда человек хочет получать деньги, но платить — нет

buddhist ★★★★★
()
Ответ на: комментарий от anonymous

Да это понятно. (Хотя, собственно, только для ОПа, для кого еще-то?)

Однако любящий Микрософт товарищ пишет совсем иное: «В таком случае придется покупать платную лицензию. Мне кажется, узнав ценник, тебе просто перехочется „статический вариант“ и ты спокойно будешь делать с динамической линковкой». Что, разумеется, есть неправда.

Zmicier ★★★★★
()
Ответ на: комментарий от Xenius

Проприетарное и коммерческое ПО — это как солёное и красное. Не пересекающиеся категории.

Ты никогда помидор не солил? O_o

ChALkeR ★★★★★
()

существенно, чтобы при этом был обеспечен механизм по обновлению Qt

А вам как разработчику коммерческой программы это зачем? При малейшей смене даже минорной версии Qt ваша прога может начать глючить. Заморозить версию Qt можно и без статической линковки - достаточно установить вместе с прогой нужную версию Qt в отдельный каталог и пользоваться ею, а не системной Qt

sigurd ★★★★★
()

Есть два типа людей: которые понимают суть LGPL и которые не понимают. Наверное это ограничение на уровне ДНК...

I-Love-Microsoft ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Вам мало кучи вин-онли шлака?

Да, нужно больше вин-онли шлака на кутях

annulen ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Наверное это ограничение на уровне ДНК

А вы знаете — нет — я припоминаю довольно много людей, которые не понимали авторское лево, и GNU Lesser GPL в частности, но после небольшого ликбеза все, кажется, поняли. Но для этого, безусловно, нужно хотеть понять.

Zmicier ★★★★★
()
Ответ на: комментарий от sigurd

существенно, чтобы при этом был обеспечен механизм по обновлению Qt

А вам как разработчику коммерческой программы это зачем?

ОП, вероятно, не вполне ясно для вас выразился. Необходимость обеспечить не только возможность обновления, но вообще право изменять (обновить ли, состарить ли, переписать пару строчек или вообще выкинуть и заменить на альтернативу) свободные зависимости в составе несвободного поделия — требование слабого авторского лева. А он его так попытался пересказать.

Zmicier ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

Ты, похоже, из тех, кто не понимает. Ещё раз, статическую линковку LGPL не запрещает (про неё в лицензии вообще ничего нет). Ты должен предоставить пользователю возможность собрать твоё приложение с новой (модифицированной) версией библиотеки. Т.е. предоставляешь все объектные файлы, мейкфайл и инструкцию по сборке — и линкуй статически на здоровье.

fluorite ★★★★★
()
Ответ на: комментарий от can

Да кто же тогда платить будет за ПО с открытыми исходниками?

Но ПО с исходниками ценнее чем без. Это как раз нормальные люди за ПО без исходников бы платить не захотели. А если оно с исходниками — это ещё одна мотивация платить.

Xenius ★★★★★
()
Ответ на: комментарий от ChALkeR

Ты никогда помидор не солил? O_o

Я поправить хотел, но не успел. Я имел ввиду что эти понятия лежат в разных плоскостях. То есть как коммерческое, так и некоммерческое ПО может быть и свободным и нет. Свободность и платность — это просто разные параметры.

Xenius ★★★★★
()
Ответ на: комментарий от fluorite

Ещё раз, статическую линковку LGPL не запрещает (про неё в лицензии вообще ничего нет).

ЕМНИП, у юристов все не так... Если про нее ничего не сказано - значит она запрещена! Разрешено только то, о чем написано... И так везде принимается «by default».. не?

kuzulis ★★
()

Можно-ли

«Можно ли»

вроде-бы

«вроде бы»

Код ПО,разумеется,будет закрытым.

«Код ПО, разумеется, будет открытым.»

batekman ★★★
()
Ответ на: комментарий от kuzulis

ЕМНИП, у юристов все не так... Если про нее ничего не сказано - значит она запрещена!

Господи ты боже мой... Прочитайте вы уже лицензии ГНУ — они в отличие от обычных всем зубодробильных юридических бумаг специально писались максимально просто и понятно. Такими в общем-то (за исключением одного места, не того, о каком сейчас речь) и получились — так что у вас все получится.

Zmicier ★★★★★
()
Ответ на: комментарий от fluorite

Вот это я как раз понимаю, просто не представляю как это технически осуществлять, и кто вообще будет этим заморачиваться? И зачем самое главное.

Приведи хотя бы два примера программ, которые используют LGPL библиотеку статически и предоставляют то что ты написал. Интересен механизм.

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

просто не представляю как это технически осуществлять

Руками

и кто вообще будет этим заморачиваться

Тот, кто захочет прикрыть свою задницу от юридических претензий

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

Конекретно в случае с Qt — люди не боятся, что Digia подаст на них в суд не заморачиваются.

CrossFire ★★★★★
()
Ответ на: комментарий от CrossFire

Хорошо, но можно хотя бы два примера ПО, которое использовало LGPL-библиотеку с возможностью подмены новой версией?

Вы же советуете ТС-у что он может смело статически линковать LGPL либы (и это еще вопрос на кой черт так делать), так давайте же ему подскажем на двух примерах как это нужно делать.

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

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

статически линковать LGPL либы (и это еще вопрос на кой черт так делать)

А разве статическая линковка не уменьшает в разы количество геморроя при переносе приложения в бинарном виде между Linux-овыми дистрибутивами и даже разными версиями одного и того же дистрибутива? Т.е. если уж приложение статически линкуется с каким-нибудь libstdc++ (и уж тем более с libgcc), то и статическая линковка с Qt-ными либами выглядит разумно. Не?

eao197 ★★★★★
()
Ответ на: комментарий от grondek

Статическая линковка запрещена

не вводи народ в заблуждение

vvviperrr ★★★★★
()
Ответ на: комментарий от eao197

vvviperrr Я и автор темы, ждем хотя бы двух примеров статической линковки, которая не нарушала бы LGPL, позволяла менять библиотеку силами пользователя (с помощью скриптов или инструкций, описанных в документации или где-либо).

Если статическая не запрещена, мы ждем примеры программ с закрытым исходным кодом со статической линковкой, в которой требования LGPL соблюдены.

I-Love-Microsoft ★★★★★
()
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от I-Love-Microsoft

Да я про другое: вы вроде спрашивали, зачем вообще может потребоваться статическая линковка с LGPL-либой. Мое предположение: дабы не делать разные сборки приложения для разных Linux-овых дистрибутивов (или даже разных версий одного дистрибутива).

Насколько просто и/или легально линковать статически с LGPL-либой — это другой вопрос.

eao197 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.