2012-03-22 64 views
3

我实际上是Qt的新手,如果有人能够解释如何在这三种情况下解释如何处理外部C++库以及如何获得使用Qt的库最简单的方法(如果可以的话)只是点我到一些地方我可以读到它): - 源h和头.cpp文件都可以 - 源h和DLL - 源h和.a文件将外部库包含到Qt

我通常使用以下程序: 1- Cmake生成制作文件 2-使用Mingw的建筑物:

Cd c:/test 
qmake test.pro 
mingw32-make 

3-包括项目Qt的:

INCLUDEPATH += C:/test/build/include 
LIBS += C:\test\build\x64\mingw\lib\file.dll.a \ ... 

我通常使用CMake的第一则qmake的建立,但有时一个不工作或经常Qt的选项不可用在CMake的。我总是仔细阅读说明。一般来说,一个经验程序员如何决定如何包含一个图书馆?

+0

Cmake是专业的工具,我建议你使用它。 – softghost 2012-03-25 15:46:07

回答

4

你不需要cmakeqmake在一起 - 一个就足够了。当我在Qt Creator中时,我主要与qmake一起工作,因为它与IDE完美集成。一般来说你在做什么是正确的。您包括HEADERS +=下的标题,SOURCES +=下的源,LIBS +=下的库和INCLUDEPATH +=下包含文件的路径。

+0

感谢GradGuy,说实话,我有点困惑什么会做什么(我仍然在寻找这个信息,它实际上不容易找到!)。 qmake仅适用于包含带有.lib文件的库吗?如果我只有.h和.cpp文件怎么办? – Maiss 2012-03-23 04:54:57

+1

如果你有一个类似'libfoo.a'的库,你需要这样做: 'LIBS + = -L/path/to/lib -lfoo'。另一方面,如果你只想在项目中包含一些'.h'和'.cpp'文件,你可以这样做: 'HEADERS + =/path/to/foo.h'和'SOURCES + = /路径/到/ foo.cpp'。根据文件的不同,您可能需要或不需要“INCLUDEPATH + =/path/to/header/library/files”。希望有所帮助。你也许想看看这个:http://qt-project.org/doc/qt-4.8/qmake-variable-reference.html – GradGuy 2012-03-23 06:29:27

+0

你让我的一天GradGuy,希望我可以投票:)我'只要我得到我的15.再次感谢。 – Maiss 2012-03-23 16:57:57

4

而不是手动将外部库添加到.pro文件你可以做一件事。

右键单击您的主项目,然后选择“添加库”选项,然后它会问

1. External library 
2. Internal Library 
3. System Library 

然后选择外部库,和其余全部事情是由Qt Creator的完成即会自动添加.pro文件的路径并将库链接到项目。

+1

谢谢Shobi,非常清楚,但是你能告诉我如何在包含.h和.cpp文件的情况下包含一个库?它是简单的#include“../files.h”吗?以及为什么需要构建一些库以便使用它们而不是简单地使用.h和.cpp文件? – Maiss 2012-03-23 04:48:59