将外部库包含到Qt
我实际上是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的。我总是仔细阅读说明。一般来说,一个经验程序员如何决定如何包含一个图书馆?
你不需要cmake
和qmake
在一起 - 一个就足够了。当我在Qt Creator
中时,我主要与qmake
一起工作,因为它与IDE完美集成。一般来说你在做什么是正确的。您包括HEADERS +=
下的标题,SOURCES +=
下的源,LIBS +=
下的库和INCLUDEPATH +=
下包含文件的路径。
感谢GradGuy,说实话,我有点困惑什么会做什么(我仍然在寻找这个信息,它实际上不容易找到!)。 qmake仅适用于包含带有.lib文件的库吗?如果我只有.h和.cpp文件怎么办? – Maiss 2012-03-23 04:54:57
如果你有一个类似'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
你让我的一天GradGuy,希望我可以投票:)我'只要我得到我的15.再次感谢。 – Maiss 2012-03-23 16:57:57
而不是手动将外部库添加到.pro文件你可以做一件事。
右键单击您的主项目,然后选择“添加库”选项,然后它会问
1. External library
2. Internal Library
3. System Library
然后选择外部库,和其余全部事情是由Qt Creator的完成即会自动添加.pro文件的路径并将库链接到项目。
谢谢Shobi,非常清楚,但是你能告诉我如何在包含.h和.cpp文件的情况下包含一个库?它是简单的#include“../files.h”吗?以及为什么需要构建一些库以便使用它们而不是简单地使用.h和.cpp文件? – Maiss 2012-03-23 04:48:59
Cmake是专业的工具,我建议你使用它。 – softghost 2012-03-25 15:46:07