Russian Qt Forum
Ноябрь 24, 2024, 06:02 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Как проверить лицензию?  (Прочитано 10509 раз)
x012
Гость
« : Январь 29, 2010, 23:23 »

Приветствую.

Возник вопрос ответ на который не нашёл ответа поисками тут и в интернетах.

Заказываю у программиста прогу. Говорит что будет писать на С++ а гуи - на Qt Creator.
Спрашиваю: а qt под какой лицензией
он: GPL 3
я: ... а что так?
он: да все в порядке мол, а че?
я: дак мы собираемся ее продавать, и СПО проект из нее устраивать нет намерения. А так же открывать исходинки.
он: да ниче - она (лицензия) же только на гуи распространяется.
я: а чего не LGPL ?
он: а ... м... хз..

Вопрос: как проверить готовый программный продукт? т.е. с какой он лицензией создавался? LGPL, GPL, или вообще может прогер пошутит и сделает на крякнутой commercial версии.

я кончено же попрошу его писать под LGPL , но проверять все равно буду.
только вот вопрос: а как?


p.s. Читал в downloads "You can choose between LGPL and GPL during the installation process." это когда качаешь framework only, а когда SDK - тогда как выбираешь LGPL или GPL?


Записан
BRE
Гость
« Ответ #1 : Январь 29, 2010, 23:45 »

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

Записан
x012
Гость
« Ответ #2 : Январь 30, 2010, 00:08 »

да делать мне нечего.
не программист я))

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

Цитировать
Не пойму в чем вопрос?
Цитировать
как проверить готовый программный продукт? т.е. с какой он лицензией создавался?
Записан
SABROG
Гость
« Ответ #3 : Январь 30, 2010, 01:52 »

Когда пришлет программу открой файл QtCore4.dll в HEX редакторе и найди строчку "qt_lcnsuser=", там не будет GPL или LGPL, но там будет "Open Source" например. В самом exe'шнике программы нет информации о лицензии. Вполне возможно, что тролли могли оставить в исходниках какой-нибудь ключ или GUID, который и выдаст программу со всеми потрахами.
Записан
uriel
Гость
« Ответ #4 : Январь 30, 2010, 10:49 »

Да вроде не должны они ничего туда зашивать были.
Посмотрел сейчас скрипт конфигурации, так там выбор GPL и LPGL определяет только то, какой файл он покажет more'ом для ознакомления. Основное же различие идёт по open source/commercial, так что какую лицензию рядом с программкой положите, такая и будет. Улыбающийся
Записан
crackedmind
Гость
« Ответ #5 : Январь 31, 2010, 01:22 »

ну как это. qApp->aboutQt() показывает инфу про лицензию. Opensource или коммерческая Улыбающийся
Записан
tim474
Гость
« Ответ #6 : Январь 31, 2010, 04:06 »

А в договоре на создание программы у вас что говорится? Кому принадлежат исключительные права на данную программу? Если создателю, и он предоставил вам программу под GPL, то тут уже ничего не спасёт, придётся распространять под GPL. Если же исключительные права принадлежат вам, то договоритесь и о выпуске Qt, но можно в любом случае пересобрать с той версией Qt, которая вам нужна. Возможно, программист согласился разрабатывать программу на тех условиях, на которых согласился, рассчитывая на то, что программа будет свободной. А за разработку проприетарной программы, на которую сам не будет иметь никаких прав, возможно, потребует большее вознаграждение Веселый

Кстати, я не понимаю, зачем нокиа распространяет Qt отдельно под GPL и LGPL? Ведь в п.3 LGPL говорится, что лицензиат вправе по своему выбору применить к определенному экземпляру Библиотеки условия GPL вместо настоящей LGPL.
« Последнее редактирование: Январь 31, 2010, 04:56 от tim474 » Записан
niXman
Гость
« Ответ #7 : Январь 31, 2010, 12:35 »

Цитировать
А за разработку проприетарной программы, на которую сам не будет иметь никаких прав, возможно, потребует большее вознаграждение
естественно!
будет глупцом если не потребует.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #8 : Январь 31, 2010, 22:38 »

>>Кстати, я не понимаю, зачем нокиа распространяет Qt отдельно под GPL и LGPL?
нет ничего отдельного, исходник один, просто дана возможность выбирать.

Положим выпускалась бы Qt только под LGPL, тогда не было бы возможности её использовать в GPL'ном проекте. Т.к. GPL по сути запрещает использование не GPL-кода.
Вот троли говорят, выбирайте один из трёх вариантов, мы разрешаем.
Записан

Юра.
tim474
Гость
« Ответ #9 : Февраль 01, 2010, 13:36 »

Цитировать
Вот троли говорят, выбирайте один из трёх вариантов, мы разрешаем.
То же самое сказано в тексте LGPL.
Цитировать
Положим выпускалась бы Qt только под LGPL, тогда не было бы возможности её использовать в GPL'ном проекте.
Можно. Ведь те же glibc, gtk и многие другие свободные библиотеки распространяются под LGPL.
« Последнее редактирование: Февраль 01, 2010, 13:38 от tim474 » Записан
x012
Гость
« Ответ #10 : Февраль 01, 2010, 20:27 »

SABROG, спасибо, посмотрел QtCore4.dll, да там стот OpenSource

Я так понял LGPL от GPL в данном случае приниципально отличается:
а) лицензией, которую сам просто назначаешь  если у тебя СПО версия продукта
б) динамической линковкой dll файлов.

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

а статическая линковка - это тупо копи-паст в тело основного кода программы?
Или имеется ввиду что это как бы "автоматический копипаст" который при компиляции собирает код из бибилотек, вставляет его в тело осноной программы, и потом компилиться с вклюеннысм текстом.
Ну и в результате, как побочный эффект вес файла становиться больше. Я прально понял?
Записан
x012
Гость
« Ответ #11 : Февраль 08, 2010, 10:11 »

да?
Записан
tim474
Гость
« Ответ #12 : Февраль 11, 2010, 22:16 »

Цитировать
Я так понял LGPL от GPL в данном случае приниципально отличается:
а) лицензией, которую сам просто назначаешь  если у тебя СПО версия продукта
б) динамической линковкой dll файлов.
Не совсем понятно, что вы имеете в виду, но попробую объяснить.
Если программа написана с использованием Qt, то она считается производной работой от Qt. Если программа является производной от программы, распространяемой под GPL, то она сама должна распространяться под лицензией GPL. Если же программа является производной от LGPL-программы, то она может распространяться под любой лицензией на выбор её правообладателя, но при условии, что пользователь может слинковать эту программу с любой версией той библиотеки, распространяемой под LGPL. Одним из способов предоставления этой возможности является динамическая линковка. Если же предоставить пользователю программу только в виде бинарного файла со статической линковкой, то он не сможет это сделать, таким образом вы нарушите условия использования Qt.

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

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

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

а статическая линковка - это тупо копи-паст в тело основного кода программы?
Или имеется ввиду что это как бы "автоматический копипаст" который при компиляции собирает код из бибилотек, вставляет его в тело осноной программы, и потом компилиться с вклюеннысм текстом.
Ну и в результате, как побочный эффект вес файла становиться больше. Я прально понял?
Ну можно назвать "автоматическим копипастом". Сам программист файлы не копирует, но на выходе мы получаем бинарник, уже содержащий в себе код этих библиотек. Правда объединяется не исходный код, а объектный.  А при динамической  линковке эти библиотеки представляют собой отдельные .dll или .so-файлы, которые вы либо предоставляете вместе с программой, либо пользователь должен скачать и установить самостоятельно.
« Последнее редактирование: Февраль 11, 2010, 22:36 от tim474 » Записан
x012
Гость
« Ответ #13 : Апрель 04, 2010, 21:44 »

tim474, спасибо. Все доходчиво и полезно)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.112 секунд. Запросов: 23.