我刚开始使用Qt并且出现了一些问题。我确信它必须是一个简单的解决方案,但我找不到它。
我有两个项目,ProjectOne和ProjectTwo。我希望你在ProjectTwo的main.cpp中使用ProjectOne中的类foo。当我运行我的程序时,文件被复制/引用到ProjectTwo中,但是当我尝试在我的main.cpp(#include "foo.h"
)中包含foo时,我收到以下错误:
> main.cpp:3: error: C1083: Cannot open include file: 'foo.h':
> No such file or directory
这是我的结构:
-ProjectOne
-ProjectOne.pro
-Headers
-foo.h
-Source
-foo.cpp
-Other files
-ProjectOne.pri
-ProjectTwo
-ProjectTwo.pro
-ProjectOne
-ProjectOne.pri
-Headers
-foo.h
-Sources
-foo.cpp
-Sources
main.cpp
这是我在.pro和.pri文件上编辑的内容
**ProjectOne.pri**
INCLUDEPATH += $$PWD
SOURCES += $$PWD/foo.cpp
HEADERS += $$PWD/foo.h
**ProjectTwo.pro:**
include(../ProjectOne/ProjectOne.pri)
QT += core
SOURCES += foo.cpp
HEADERS += foo.h
我在Windows 7上使用Qt Creator 3.1.2。我的编程语言是C ++,我正在使用VisualStudio 10 Express进行编译。
非常感谢任何帮助!
答案 0 :(得分:1)
当包含不直接在您的项目文件夹中的文件时,您需要将其包含在完整路径或相对路径中。
即
#include "bar/foo.h"
或
#include "../../bar/foo.h"