qt,类库项目,并包含 <>

Posted

技术标签:

【中文标题】qt,类库项目,并包含 <>【英文标题】:qt, library -like project, and include <> 【发布时间】:2014-07-19 16:49:11 【问题描述】:

在 Qt 中,我想要一个单独的类库项目(不是 .lib,简单的 .cpp/.h 文件,而是在单独的项目中)。让我们称之为“图书馆”。将包含它的项目称为“测试”。 为此,在“库”项目中,我创建了 .pri 文件,而不是 .pro。从这一刻起,我有了以下文件结构:

/library
   library.pri
   calc.h
   calc.cpp
/test
   test.pro
   main.cpp

library.pri 的包含如下:

SOURCES += calc.cpp     
HEADERS += calc.h 

test.pro:

TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

#include(../library/library.pri)

SOURCES += main.cpp

现在我想包含 calc.h 。但我不想指定相对目录,即:

#include "../library/calc.h",我想要:#include &lt;calc&gt;

怎么做?

【问题讨论】:

【参考方案1】:

将此放入library.pri项目包含文件中:

SOURCES += calc.cpp     
HEADERS += calc.h
INCLUDEPATH += $$PWD # this is the extension!

此添加可确保包括此项目包含文件的任何项目文件都获得该库文件夹的正确包含路径,而不仅仅是“测试”。

【讨论】:

你的意思是,在 test.pro 中? 我可以用同样的方式使用 .pro 文件吗?我的意思是从 .pro 中包含 .pro? @tower120:从语义上讲,在项目文件中包含项目文件没有多大意义。这就像链接到应用程序中的应用程序。 顺便问一下,有没有办法从 Qt Creator 制作那个 .pri 文件?因为我真的看不到那里。 它被收录后会自动显示给我。

以上是关于qt,类库项目,并包含 <>的主要内容,如果未能解决你的问题,请参考以下文章

在文件夹中组织Qt项目文件,并简化包含

Qt Linux 下 <QWidget> <QSystemTrayIcon> <QLabel> 等头文件包含时 No such file or directory

QT跟MFC的区别?QT可以调用MFC的东西吗?

Qt 项目中的 unique_ptr

.frame类库简单介绍与使用

如何在 Qt Creator 中添加包含路径?