在控制台应用程序上通过lib和dll运行QT GUI?

时间:2013-08-22 08:53:57

标签: visual-studio qt dll static-libraries qt-creator

完整源代码的可下载地址: http://cfile209.uf.daum.net/attach/267EAF4B5215CFDD0D951E

您好。我正在尝试创建一个控制台应用程序,它使用lib文件中编码的函数,该文件也调用dll文件中的函数。 (console - > lib - > dll)

Dll文件是QT Gui实现。 Lib文件使用QLibrary从DLL加载东西。

这些lib和dll库是通过.pro文件在QT Creator上编译的。 (QT版本是最新的5)

主控制台应用程序使用这两个lib和dll在MSVS 2008上创建。

我在MSVS 2008上编译时遇到错误:

1>main.obj : error LNK2019: unresolved external symbol "int __cdecl CreateQt(int,char * * const)" (?CreateQt@@YAHHQAPAD@Z) referenced in function _main

我把lib和dll放到Console应用程序的文件夹中,好像我收到链接错误,有什么帮助吗?

谢谢

这是我的控制台应用程序源代码。

#include "main.h"

#pragma comment(lib,"./main.lib") //main.lib is library created on QT Creator

int main(int argc, char *argv[])
{

    CreateQt(argc,argv);

    return 0;
}

1 个答案:

答案 0 :(得分:0)

你有吗

TEMPLATE = lib

在你的lib的专业档案中?

在您的控制台的专业档案中,您有类似

的内容
LIBS += -L../folder/path/to/libfile -lLibFileNameWithoutDotLib

好像你没有正确地链接控制台应用程序中的lib文件。我假设CreateQt是你的lib代码中的一个函数。