Создание динамической библиотеки в linux
От: Zeter  
Дата: 21.11.17 08:33
Оценка:
Всем привет! После сборки биьлиотеки qt в "статическое" состояние появилась проблема при сборке проекта динамической библиотеки. При использовании сборки библиотеки из коробки все было ок создавался на выходе файл libname.so, однако если сборка проходит с использованием "статической" библиотеки появляется файл libname.a. Как такое возможно? Ведь настройки в pro файлк одинаковые. И настройки qmake, вроде, тоже идентичны. Подскажите куда копать.
qt
Re: Создание динамической библиотеки в linux
От: XOOIOOX  
Дата: 21.11.17 09:36
Оценка:
Здравствуйте, Zeter, Вы писали:

Z> Подскажите куда копать.


Держать две версии, статическую и динамическую.
Re[2]: Создание динамической библиотеки в linux
От: Zeter  
Дата: 21.11.17 09:52
Оценка:
Здравствуйте, XOOIOOX, Вы писали:

XOO>Здравствуйте, Zeter, Вы писали:


Z>> Подскажите куда копать.


XOO>Держать две версии, статическую и динамическую.



Мне надо создать динамическую библиотеку без зависимостей. Для этого я собрал пересобрал библиотеку QT с параметром -static.
Но при использовании этой библиотеки создается только файл libname.a. Вот я и задаюсь вопросом как создать libname.so.
Однако при использовании оригинальной библиотеки QT из коробки создается файл libname.so
Re[3]: Создание динамической библиотеки в linux
От: XOOIOOX  
Дата: 21.11.17 10:24
Оценка:
Здравствуйте, Zeter, Вы писали:

Z>Однако при использовании оригинальной библиотеки QT из коробки создается файл libname.so


Вот оно что. Не знаю, как в Линуксе, но на Венде в при сборке указываю, что прога это динамическая библа, а Qt, разумеется, собран под статику и он сам полностью подлинковывается статически. Т.е. нужно где-то задать, что "основная" прога это библа типа .so

Сорри, более детально не подскажу. Мой опыт с Никсами ограничивается только Макосью, где я в Xcode указывал, что проект это "Mach-O Type -> Bundle", а все остальное линковать как статику.
Re[4]: Создание динамической библиотеки в linux
От: Zeter  
Дата: 21.11.17 10:32
Оценка:
Здравствуйте, XOOIOOX, Вы писали:

XOO>Здравствуйте, Zeter, Вы писали:


Z>>Однако при использовании оригинальной библиотеки QT из коробки создается файл libname.so


XOO>Вот оно что. Не знаю, как в Линуксе, но на Венде в при сборке указываю, что прога это динамическая библа, а Qt, разумеется, собран под статику и он сам полностью подлинковывается статически. Т.е. нужно где-то задать, что "основная" прога это библа типа .so


XOO>Сорри, более детально не подскажу. Мой опыт с Никсами ограничивается только Макосью, где я в Xcode указывал, что проект это "Mach-O Type -> Bundle", а все остальное линковать как статику.




Точняк. Спасибо.
Re: Создание динамической библиотеки в linux
От: Skorodum Россия  
Дата: 27.11.17 14:05
Оценка:
Здравствуйте, Zeter, Вы писали:

Z>Всем привет! После сборки биьлиотеки qt в "статическое" состояние появилась проблема при сборке проекта динамической библиотеки. При использовании сборки библиотеки из коробки все было ок создавался на выходе файл libname.so, однако если сборка проходит с использованием "статической" библиотеки появляется файл libname.a. Как такое возможно? Ведь настройки в pro файлк одинаковые. И настройки qmake, вроде, тоже идентичны. Подскажите куда копать.


Похоже на это

QT       += core gui widgets
CONFIG += static dll
TARGET = testqtdll
TEMPLATE = lib
DEFINES += TESTQTDLL_LIBRARY
SOURCES += testqtdll.cpp widget.cpp
HEADERS += testqtdll.h testqtdll_global.h widget.h
FORMS += widget.ui
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.