LINUX.ORG.RU
решено ФорумTalks

В чём выгода для разработчиков библиотеки Qt требовать динамическую линковку при LGPL?

 ,


0

4

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

Это доставляет какие-то сложности программистам, которые используют Qt, и те вынуждены покупать лицензию?

Ткнулся в Яндекс, сходу ответа не нашёл.

★★★★★

Вообще говоря они не требуют, это просто самый простой способ не нарушить лицензию. С тем же успехом можно линковать статически и предоставлять объектные файлы по требованию/выкладывать куда-нибудь.

CrossFire ★★★★★ ()

Ну как минимум это осложняет делать статические сборки какого-нибудь проприетарного софта, который пишется раз, а потом доставляется в неизменном виде лет 20. То есть статически собранный бинарник включает в таком случае вообще все зависимости и может работать на любом ядре в случае линукса и любой версии венды в случае венды.

ixrws ★★★ ()

А какую лицензию предлагаете вы?

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

статически собранный бинарник включает в таком случае вообще все зависимости

В чём проблема кинуть DLLs/so в рабочий каталог проекта? LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH ./prog

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

Когда смотришь на API Qt, создаётся впечатление, что он разрабатывался для Бейсика.

cantus ()

Ткнулся в Яндекс, сходу ответа не нашёл.

а в интернете поискать пробовал?

alltiptop ★★★★★ ()

требовать динамическую линковку при LGPL?

А кто её требует и где?

ya-betmen ★★★★★ ()

В чём выгода для разработчиков Qt требовать динамическую линковку при LGPL?

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

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

Ну как минимум это осложняет делать статические сборки какого-нибудь проприетарного софта, который пишется раз, а потом доставляется в неизменном виде лет 20. То есть статически собранный бинарник включает в таком случае вообще все зависимости и может работать на любом ядре в случае линукса и любой версии венды в случае венды.

Ну делай динамические сборки (и файл launch.sh в котором написано export LD_LIBRARY_PATH=/opt/proprietary-shit/libs/Qt; /opt/proprietary-shit/bin/proprietary-shit-gui ), в плане кросс-дистрибутивности они ничем не уступают статическим. Также google://rpath

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

Ну делай динамические сборки (и файл launch.sh в котором написано export LD_LIBRARY_PATH=/opt/proprietary-shit/libs/Qt; /opt/proprietary-shit/bin/proprietary-shit-gui ), в плане кросс-дистрибутивности они ничем не уступают статическим.

Уступают. При статической линковке есть способы слинковать не всю либу а её часть, то есть уменьшить и вес и количество зависимостей.

Napilnik ★★★★★ ()

В чём выгода для разработчиков Qt требовать динамическую линковку при LGPL?

Ты что-то придумал. Нет такого требования.

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

Обоснуй. Чем тебе так не нравится Qt, что даже говно, вроде xlib может понравиться?

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

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

goingUp ★★★★★ ()

В смысле «требуют»? Там где-то написано, что статическая линковка явно запрещена?

atrus ★★★★★ ()

Они этого не требуют, и не могут требовать — лицензии авторского лева GNU (в частности Lesser GPL) на то и лицензии авторского лева, что они *не* позволяют накручивать всякие требования.

Выгода же в неразвеянии сомнений на этот счет очевидна — больше людей^W проприетарщиков купят у них исключение из слабого (!) авторского лева.

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

Тебе именно мотив разработчиков Qt нужен, или вообще? Вообще по духу LGPL пользователь должен иметь возможность запустить программу с изменённой версией lgpl-библиотеки. Чтобы он (либо кто другой за него) мог, скажем, исправить баг в Qt и запустить все qt-программы с исправленной версией Qt.

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