Создание dll-библиотеки, со статически подлинко-, ванными стадартными Qt-библиотеками |
Здравствуйте, гость ( Вход | Регистрация )
Создание dll-библиотеки, со статически подлинко-, ванными стадартными Qt-библиотеками |
Гость_Гость_evg123_*_* |
7.6.2010, 19:55
Сообщение
#1
|
Гости |
Вопрос простой - как убрать зависимости в проектируемой dll- библиотеке от стандартных библиотек (не хочется их таскать с собой и отдавать конечному пользователю). Пока решение не нашёл. Сделал статическую версию Qt (4.5.2), но как только выдаю, что хочу создать dll-библиотеку, то линковщик создаёт эту библиотеку с динамической компановкой со стандартными (типа QtCore.dll). Можкт кто с этим сталкивался и знает, как обойти эту проблему. Получается, что если создаю приложение - то туда всё статически динкуется, а если - dll-блилиотеку - то статически туда ничего подлинковываться не хочет.
|
|
|
Litkevich Yuriy |
8.6.2010, 19:42
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
evg123, расскажи подробнее, как ты делаешь библиотеку. Как выглядит pro-файл
|
|
|
Гость_Гость_evg123_*_* |
8.6.2010, 19:56
Сообщение
#3
|
Гости |
evg123, расскажи подробнее, как ты делаешь библиотеку. Как выглядит pro-файл На работе этот *.pro . Сегодня там не работал интернет, поэтому сейчас смог ответить только из дома. Но завтра (на крайняк вечером) - выложу. (Суть в том, что создаю TEMPLATE = lib, использую статическую библиотеку, но пишу CONFIG = dll. Далее, пишу ещё LIB = <путь>/QtCore4.a и процесс компановки проходит замечательно, но создаётся dll c динамическими связями к QtCore4.dll . Если же не писать LIB = <путь>/QtCore4.a , то тогда возникает куча неразрешённых ссылок. Так что какую-то роль всё-таки эта строка LIB = <путь>/QtCore4.a -играет) |
|
|
Гость_Гость_evg123_*_* |
8.6.2010, 20:04
Сообщение
#4
|
Гости |
Дело в том, что я имел стандартный Qt, который шёл с QtCreator-ом. Там изначально всё было с динамическими библиотеками. Потом я сделал копию Qt и собрал его под мингвином с опцией configure -static ; mingw32-make. Храню эту копию у себя на случай того, чтобы делать статические приложения. и они по ходу делаются без проблем. Большие по размеру, и вполне статически слинкованные. Теперь то же хотел сделать и с Dll - но ничего подобного. Наверное те родные dll - ки, что остались после копирования Qt - мешают? Может их попробовать удалить? Но не запорчу ли я этим что-либо важное?
|
|
|
Текстовая версия | Сейчас: 29.11.2024, 11:55 |