Создавая службу на основе QtService версии 2.6.1, при компоновке происходили ошибки следующего вида:
error LNK2019: unresolved external symbol "public: virtual __thiscall QtServiceBase::~QtServiceBase(void)" (??1QtServiceBase@@UAE@XZ) referenced in function "public: virtual __thiscall QtService
Для того чтобы правильно собрать модуль
Взять файл examples.pro, в папке examples предварительно создав папку с названием проекта, изменить его следующим образом:
Присвоить ему имя необходимого solution:
solution_name.pro
А содержимое этого файла должно иметь следующий вид:
TEMPLATE = subdirs
SUBDIRS = project_name\
Где SUBDIRS обозначает имя проекта, который будет создан в solution.
В папке project_name\ должны быть файлы:
project_name.pro
project_name.qdoc
и как минимум файл main.cpp
В файле project_name.pro
TARGET = ProjectName
TEMPLATE = app
CONFIG += console qt
QT = core network
QT указывает какие Qt библиотеки будут использоваться в проекте:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiO0gXjkT2QpviwYlDmf0V9OsQ1G3r3dF37zfaazggVpN7M2ASB3ifgUuuj4c0aMvXv2C8KZ9PZ05-RVeePHcQE9XFDwP9H9Ob_Nj9szb_FopavlYgOkO7LzZWBGDWIaW3gbQhPDEMJ4cs/s400/QtLibs.png)
include(../../src/qtservice.pri)
Затем необходимо открыть файл solution_name.pro в студии:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgiUQTUK1cfu5Hqi57Om07dL3Hs89eA0Z3_puiUtQvXmQQKTCPQwfJ_Lv3N7CcZ2JYmGnOdBDFlbglta_YFNxCm2MJ5UmDK1sTc24OTM_3Snj36yFgMTMunZQ7vHhaR2RVRIOvhQWDqGYs/s400/OpenPro.png)
Открыв файл должно появиться следующее окно:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YykVU3SYhfgcTn2yYgBVW9Bx4fS_XWw_efWYFzJCmv7ly5Rr8dR3TU6Ho-tjtYAI_BbYGuqouDfj-cbv6DDUOT19VZoha4m8KIiWJdWKjx4hLcTblfAvcYY8DyBTQTFlXV-YaOWkSyQ/s1600/OpeningPro.png)
No comments:
Post a Comment