我一直在尝试将一个开源项目导入到Qt-Creator中来阅读代码并通过debuging来学习它。不幸的是,我无法建立进口项目。我找到了两个有趣的项目:
https://sourceforge.net/projects/qpass/files/source/
和
https://github.com/keepassx/keepassx
我将它们导入到Qt Creator中的文件 - >新文件或项目 - >导入项目 - >导入为qmake项目(限制功能)。之后我尝试运行该项目,我收到一个错误:
G:\ Qt Projekte \ keepassx-2.0.3 \ src \ autotype \ test \ AutoTypeTest.h:23:Fehler:autotype / AutoTypePlatformPlugin.h:没有这样的文件或目录
该文件肯定存在,并且在项目中。我用Google搜索并发现将Qt4项目导入Qt5时可能会出现问题。有些用户建议将'Qt + =小部件'插入到专业文件中。但它没有解决我的问题。
有人知道如何解决这个问题吗?我将项目导入Qt Creator的方式是错误的吗?
答案 0 :(得分:0)
您要使用“打开文件或项目”,而不是“新文件或项目”。由于两个项目都使用cmake,因此您应该打开最顶层的CMakeLists.txt
文件。我已经验证了两个的项目在OS X上使用Qt / Creator从macports开放,并使用默认的 CodeBlocks - Unix Makefiles CMake Generator成功构建,或者 CodeBlocks - Ninja 。
以下是我必须做的事情才能让构建进行:
将macports二进制路径(/opt/local/bin
)添加到项目构建设置中的系统环境中。这样cmake
就会找到ninja
。如果你不使用忍者,这是可选的,但忍者通过良好的整数因子加速构建,所以推荐使用make。
将/opt/local/include
路径添加到QPass INCLUDE_DIR
中的CMakeLists.txt
路径:否则它将无法从macports中找到gcrypt的包含文件。这对大多数Linux发行版来说都不是问题,但你需要在Windows上进行类似的修复。