Qt build, который может ссылаться статически из коробки? - PullRequest
2 голосов
/ 12 февраля 2010

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

Так кто-нибудь знает установщик Qt SDK, который предоставляет возможность статической компоновки из коробки?

Ответы [ 4 ]

2 голосов
/ 12 февраля 2010

В дополнение к ответ Мартина Беккета .

Будьте осторожны с лицензиями!

Если вы используете Qt в соответствии с (L) GPL условиями лицензии и распространяете свое собственное приложение под (L) GPL , то все в порядке.

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

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

1 голос
/ 12 февраля 2010

Если вы хотите статически связать Qt, вам нужна коммерческая лицензия - которая поставляется со статическими библиотеками.

РЕДАКТИРОВАТЬ - да, возможно, вы могли бы предоставить пользователю какой-нибудь инструмент для исправления, который позволил бы им переключать вашу статически связанную библиотеку Qt с их собственной версией и оставаться в LGPL - но на самом деле?

0 голосов
/ 12 февраля 2010

Очень подробный пост о сборке статической версии Qt с наборами инструментов MS и gcc можно найти здесь .

0 голосов
/ 12 февраля 2010

Для Unix / Windows / Mac OS-x это так же просто, как добавить параметр -static для настройки:

-static ............ Создание и использование статических библиотек Qt.

Страница развертывания содержит ссылки на особенности каждой ОС.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...