LINUX.ORG.RU

Лицензия Qt библиотеки в коммерческой разработки

 


1

2

Здравствуйте
Вопрос возник по поводу лицензии Qt.
Если я занимаюсь разработкой и выпуском оборудования, предоставляя для оборудованию ПО, на своем сайте, бесплатно
Подскажите, должен ли я покупать лицензию Qt, если:
1. исходный код я в открытый доступ предоставлять не буду
2. мне необходимо статически линковать библиотеки Qt

Второй пункт не принципиален, просто как мое желание в идеале.

Писал в службу поддержки Qt, ответов не получил.
Наверняка кто-то сталкивался... подскажите пожалуйста.


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

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

Спасибо за ответ!
Что значит предоставлять исходники Qt?
Они в открытом доступе на офф. сайте.
Или же данный пункт подразумевает, что исходники Qt мне нужно клонировать дополнительно в сети и указать адрес?

pulya ()

Просто забудь про пункт 2 и зарабатывай свои миллионы ничего не покупая :)

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

Если линковать статически, то только покупать.

Это неверно. GNU Lesser GPL никак не запрещает статическую компоновку, в том числе с несвободными программами.

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

Подскажите, должен ли я покупать лицензию Qt, если:
1. исходный код я в открытый доступ предоставлять не буду
2. мне необходимо статически линковать библиотеки Qt

1. Не проблема
2. Нужно быть готовым по требованию предоставить объектные файлы.

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

2. Нужно быть готовым по требованию предоставить объектные файлы.

Не только, да и возможность предоставлять в ручном режиме по требованию скоро будет исчерпана в связи с обновлением лицензии.

Вообще, товарищу Пуле неплохо бы прочитать саму GNU LGPL, а также и GNU GPL, ибо первая не самостоятельна (это если мы об актуальной третьей версии, а Qt на нее скоро перейдут) — они на удивление понятно для юридического документа написаны.

Но если его интересует пересказ какого-то там хрена с ЛОРа, то бога ради.

Итак, суть в том, что вы должны обеспечить возможность реализации всеми пользователями права на изменение свободной библиотеки, даже если она связана с вашим несвободным произведением. Для этого вы должны:

  • Поставить получателей вашей программы в известность, о том, что у них есть такое право: то есть сообщить, что в нее включена такая-то свободная библиотека на условиях GNU Lesser GPL, приложить уведомление об авторских правах на нее, включая полный текст GNU LGPL (включая и GNU GPL, если v3).
  • Предоставить возможность получить соответствующий исходный код библиотеки и об’яснить, как его получить. «Соответствующий» — значит именно тот, из которого вы собрали ту библиотеку, что передаете получателю в составе вашего продукта (и в частности, версию не новее, а именно ту). В случае поставки оборудования проще всего будет просто приложить исходники (тарболл) к нему (записать на встроенный накопитель), в случае загрузки программы с сайта — предложить их загрузить оттуда же.
  • Дать техническую возможность перекомпоновать ваш продукт с измененной версией библиотеки. Для этого в случае компилируемого кода — да, проще всего использовать динамическую компоновку; но можно и статическую, тогда надо предоставить, как минимум, годный для компоновки об’ектный код. Об’яснить вкратце, что это такое вы даете и как это компоновать.
  • Дать необходимые правовые разрешения: на собственно перекомпоновку, а также на обратную разработку в целях отладки этой перекомпоновки.

Вот как-то так, вроде бы ничего не забыл; ничего сложного, в общем.

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

Хочу спросить у Вас, вот в терминах «Коммерческая разработка» у Qt подразумевается, что ПО, использующее библиотеки Qt, должно быть платным?
Если это ПО бесплатно, можно говорить, что это не коммерческая разработка?

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

ПО, использующее библиотеки Qt, должно быть платным?

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

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

Что там имеется в виду у Qt (тем более, что вы не́ дали контекста) — спрашивайте у них.

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

Всегда пожалуйста, но, само собой, имейте в виду, что I am not a lawyer and this is not legal advice.

А вообще, все-таки где вы это у Qt прочитали?

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

Это неверно. GNU Lesser GPL никак не запрещает статическую компоновку, в том числе с несвободными программами.

Оно понятно, но удовольствие это сомнительное и на практике никто так не делает.

Pavval ★★★★★ ()

исходный код я в открытый доступ предоставлять не буду

Язабан

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

Что значит предоставлять исходники Qt?

Это значит, что если тебе захочется модифицировать исходники Qt, то эти модификации надо будет открыть.

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

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

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

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

У официалов понятная цель - им кушать хочется. И цель вполне благая, как мне кажется. Мыже за свободу как за free speech, а не за free beer, я надеюсь?

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

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

Если линковать статически, то только покупать

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

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

Вообще, если ты собрался зарабатывать именно на _оборудовании_, можно таки подумать, чтобы исходники были открытые (типа как открытый драйвер у AMD). Если у тебя оборудование - железка, которая втыкается куда-то ещё, можно за счёт этого получить дополнительную гибкость и лояльность пользователей.

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

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

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

А теперь идешь в legal отдел свей компании (если ты не домашний теоретик, а работу имеешь) и спрашиваешь, что они думают на тему выкладывания недолинкованых бинарей. Получаешь направление и очень долго идешь в этом направлении.

Pavval ★★★★★ ()

А хочешь я тебе скомпилячу Qt5 в дистре 2007 года? В этом случае, конечный пользователь не словит ошибку «нужен более новый Glibc или системная либа, которой у тебя почему-то нет». Либы распространяются в отдельных каталогах lib32 и lib64, и подцепляются скриптом run.sh.

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

Я не знаю, кем является ТС. Если он руководитель компании, значит для него этой проблемы нет, он сам решает, выкладывать или не выкладывать. Если же рядовой разработчик, которому предоставлено право выбора инструментов, то пусть объясняет начальству возможные варианты. А начальство будет решать, покупать Qt или выкладывать объектные файлы.

te111011010 ()
11 ноября 2016 г.
Ответ на: комментарий от Zmicier

Итак, суть в том, что вы должны...

Ух, много мы должны. Но зато можно на пользователе отыграться: для передачи исходного кода можно тоже выдвинуть условия. Как-то серийный номер оборудования, точная версия ПО, дата/место приобретения, специальный чек на сумму в 15 у.е. (какой специальный, как его достать?), который необходимо отослать специальной почтой (ещё энное кол-во у.е. плюс ожидание у моря погоды), чтобы оплатить расходы фирмы по подготовке исходных кодов (поиск необходимой версии, запись на CD, упаковка, отправка).

Pavval:

GNU Lesser GPL никак не запрещает статическую компоновку, в том числе с несвободными программами.

Оно понятно, но удовольствие это сомнительное и на практике никто так не делает.

Да, на практике лучше сделать так, чтобы пользователь 10 раз подумал да и передумал просить исходники.

te111011010:

Достаточно выложить промежуточную форму своего проприетарного кода

Не, выкладывать их никто не должен. Достаточно предложить запросить их. Да так, чтобы расхотелось.

P.S. С иронией на основе реальных фактов, немного драматизируя.

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

чтобы оплатить расходы фирмы по подготовке исходных кодов (поиск необходимой версии, запись на CD, упаковка, отправка).

Какая еще «упаковка»? Товарищ же написал — он на своей странице с Сети несвободную программу публиковать будет.

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

Учтивая, что этот вопрос поднимается каждый месяц только на лоре - совсем не очевидна.

Ну и не будем забывать, что MPL придумали именно из-за непоняток с LGPL.

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

Учтивая, что этот вопрос поднимается каждый месяц только на лоре - совсем не очевидна.

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

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

MPL решает проблемы LGPL, разве нет? У неё четко описана (разрешена) статическая линковка. Некоторые проекты перешли на неё именно поэтому, к примеру eigen.

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

MPL решает проблемы LGPL, разве нет?

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

Вместе с тем, MPL 2.0 создает куда более серьезную проблему — она низводит совместимость с GNU [Lesser] GPL до опции, так что услышав, что программа А — на условиях MPL 2.0 невозможно сказать, совместима она с GNU [Lesser] GPL или нет. Надо перебирать *все* файлы по одному, и смотреть, нет ли в них указания на несовместимость.

У неё четко описана (разрешена) статическая линковка. Некоторые проекты перешли на неё именно поэтому, к примеру eigen.

Наоборот, Eigen, как я вижу, перешел в от GNU Lesser GPL к MPL. Или у вас местоимение «она» меняет значение от предложения к предложению?

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

Бинарник - да. Но исходник вовсе не обязательно. Это личное дело между ним и каждым, кто скачав программу, пожелал при этом получить исходник. И, если я не ошибаюсь, как бы его ни получили, публиковать (выкладывать) его ни один из клиентов не имеет права.

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

Бинарник - да. Но исходник вовсе не обязательно. Это личное дело между ним и каждым, кто скачав программу, пожелал при этом получить исходник.

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

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

Это как договорятся. Учитывая, что по условиям задачи они будут открыто опубликованы на веб-странице хозяина, не разрешать их распространять странно.

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

Да. Я о MPL. И ничего там не меняется. В обоих предложениях я говорю об MPL.

У MPL нет проблем со статической линковкой, а LGPL есть. Это то, что важно мне. Поэтому я свои либы распространяю под MPL.

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

MPL решает проблемы LGPL, разве нет? У неё четко описана (разрешена) статическая линковка.

Да. Я о MPL. И ничего там не меняется. В обоих предложениях я говорю об MPL.

В MPL четко описана статическая компоновка, тогда как в GNU LGPL — нет?

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

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

Я черпаю из интернета. Чтение самой лицензии - слишком хадкорно, ибо я не понимаю о чём там речь (и проблема не в английском).

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

я не понимаю, о чем там речь

ЧТД.

Надо полагать, что на той свалке, где вы набирались знаний, просто перепутали две лицензии местами — это в GNU LGPL «четко описана (разрешена) статическая компоновка», тогда как в MPL про нее вообще ни слова.

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

Тогда как объяснить 100500 тем про статическую линковку lgpl?

Даже оф доке: https://www.qt.io/qt-licensing-terms/

In case of static linking of the library, the application itself may no longer be “work that uses the library” and thus become subject to LGPL. It is recommended to either link dynamically, or provide the application source code to the user under LGPL.

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

Тогда как объяснить 100500 тем про статическую линковку lgpl?
Даже оф доке: https://www.qt.io/qt-licensing-terms/

> Учтивая, что этот вопрос поднимается каждый месяц только на
> лоре - совсем не очевидна.

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

Лицензия Qt библиотеки в коммерческой разработки (комментарий)

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

Самое главное лично для меня: динамическая линковка LGPL библиотек абсолютно допустима для программ с любой лицензией. Я прав? Я не использую статическую линковку никогда, поэтому для меня важно лишь динамическая.

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

динамическая линковка LGPL библиотек абсолютно допустима для программ с любой лицензией. Я прав?

Не совсем. Требования по части условий по сути *одинаковы* вне зависимости от способа компоновки, а равно и вообще наличия таковой (напоминаю, что добрая часть программ в машинный код ныне не собираются совсем). Они прямо проистекают из заявленных целей: пользователю нельзя воспрещать заменять «библиотеку» под Lesser GPL (на новую / измененную / альтернативную версию).

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