Russian Qt Forum

Qt => Вопросы новичков => Тема начата: MVG-V70 от Июль 28, 2011, 17:16



Название: Как создать lib-библиотеку ?
Отправлено: MVG-V70 от Июль 28, 2011, 17:16
Прошу прощения за глупый вопрос, но я только начинаю заниматься QT.
Скачал библиотеку QextSerialPort, пытаюсь "установить" ее в QT. Для этого открываю проект qextserialport.pro и собираю его, сборка проходит без ошибок, файл qextserialport.lib нигде не появляется, а сборка любого примера ругается на отсутствие библиотеки (.lib)
Как правильно собрать и подключить библиотеку?


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Июль 28, 2011, 17:50
А попробуй ка QSerialDevice: https://gitorious.org/qserialdevice
Линк на загрузку master ветки: https://gitorious.org/qserialdevice/qserialdevice/archive-tarball/master

Это "наша" разработка, имеет документацию на русском.
Там куча примеров в /examples и /test.

Попробуй, может понравится. :)

ЗЫ: А QextSerialPort - древняя древность.  ::)


Название: Re: Как создать lib-библиотеку ?
Отправлено: MVG-V70 от Июль 29, 2011, 09:11
QSerialDevice
При сборке BuildLibrary.pro получил ошибку об отсутствии QtCore\private\qwineventnitifier_p.h.
Скачал исходники Qt, там этот файл есть, но находится в src\corelib\kernel.
Просто скопировать этот файл в QtCore\private?
Как нужно правильно устновить исходиники Qt, чтобы необходимый заголовочный файл был найден?


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Июль 29, 2011, 09:30
>>Просто скопировать этот файл в QtCore\private?
Да, скопировать скорее всего нужно в: <путь к установленной Qt4 SDK>\include\QtCore\private\

>>Как нужно правильно устновить исходиники Qt, чтобы необходимый заголовочный файл был найден?
Никак. Правильно - это собрать Qt из исходников и тогда такой проблемы быть не должно.


Название: Re: Как создать lib-библиотеку ?
Отправлено: MVG-V70 от Июль 29, 2011, 09:57
Спасибо, получилось. Но после сборки библиотеки не образуется файла qserialdevice.lib, на отсутствие которого ругается компилятор при сборке примеров  ???


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Июль 29, 2011, 10:21
>> Спасибо, получилось. Но после сборки библиотеки не образуется файла qserialdevice.lib
Образуется. Внимательнее смотри.

>> на отсутствие которого ругается компилятор при сборке примеров
Примеры собираются при помощи BuildExamples.pro.

PS: Читать README не пробовал? Или ты писатель а не читатель?  :)


Название: Re: Как создать lib-библиотеку ?
Отправлено: MVG-V70 от Июль 29, 2011, 11:38
Вроде все заработало!
Последний чайниковский вопрос:
каталог BuildExamples-build-desktop образуется в QtSdk. Наверное, можно что-то прописать в .pro-файл, чтобы этот каталог создавался в каталоге с примерами. Где можно почитать про параметры .pro-файла.
При нажатии F1 пишет, что нет документации...


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Июль 29, 2011, 12:03
>>каталог BuildExamples-build-desktop образуется в QtSdk. Наверное, можно что-то прописать в .pro-файл, чтобы этот каталог создавался в каталоге с примерами.

O_o с чего это вдруг в QtSdk?
Исходники QSerialDevice не нужно копировать в QtSdk - а нужно куда нить в ваш проект на какой нить диск/каталог закинуть.

>>Где можно почитать про параметры .pro-файла.
>>При нажатии F1 пишет, что нет документации...

Запускай assistant и читай.

PS: в QSerialDevice  в каталоге /test есть еще и GUI примеры (помимо тех что в /examples).
Если будешь их собирать - то используй guiapp.pro / guiapp2.pro


Название: Re: Как создать lib-библиотеку ?
Отправлено: KocMak от Октябрь 14, 2011, 22:25
Здравствуйте.

Пробую работать с QSerialDevice и тоже столкнулся с проблемой, как у автора темы. Но описанные решения мне не помогли, т.к.:

Цитировать
При сборке BuildLibrary.pro получил ошибку об отсутствии QtCore\private\qwineventnitifier_p.h.
Скачал исходники Qt, там этот файл есть, но находится в src\corelib\kernel

Данного файла у меня нет. Где можно скачать исходники Qt или это файл?

Цитировать
>>Просто скопировать этот файл в QtCore\private?
Да, скопировать скорее всего нужно в: <путь к установленной Qt4 SDK>\include\QtCore\private\

Нет у меня такого пути.

Подскажите, пожалуйста, как решить проблему.


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Октябрь 14, 2011, 22:58
Скачать исходники Qt4 тут: http://qt.gitorious.org/qt/qt/archive-tarball/4.7
или с сайта нокии: http://download.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.4.zip

Но зачем всё качать, если нужен всего-то один файлик! Я в аттач добавил этот недостающий заголовок.

Его нужно скопировать в директорию с SDK, например сюда (если качали SDK для msvc2008):
c:\QtSDK\Desktop\Qt\4.7.4\msvc2008\include\QtCore\private\qwineventnotifier_p.h

Иначе, наверное, вместо директории msvc2008 будет что-то типа mingw или как то так.


Название: Re: Как создать lib-библиотеку ?
Отправлено: KocMak от Октябрь 14, 2011, 23:55
Спасибо за файл и помощь.

У меня, видимо, не последняя версия SDK, т.к. по пути есть папка "4.7.3" и нет папки "private", зато есть и "msvc2008", и "mingw". Скопировал в оба каталога, создав "private". В результате проект собрался и создался файл libqserialdevice.a. Это и есть нужная библиотека для работы?


Название: Re: Как создать lib-библиотеку ?
Отправлено: kuzulis от Октябрь 15, 2011, 08:55
да