Eclipse CDT/Qt:有一个Qt Gui项目依赖于工作空间中的另一个c++项目
Eclipse CDT/Qt: have a Qt Gui project depend on another C++ project in the workspace
我使用Eclipse/CDT在Eclipse c++项目("MyAlgorithm")中实现了一个相当复杂的算法。为了能够可视化算法的步骤,我想创建一个简单的Qt GUI。我已经下载并安装了Qt Eclipse集成,并创建了一个带有主窗口的Qt项目("MyGUI")。一切都按照它应该的方式编译——各个组件都就位了。
然而,当我尝试在MyGUI中使用MyAlgorithm中的类时,一切都停止了…虽然我在MyGUI中所有可能的对话框和我能想到的地方引用了MyAlgorithm[1],但构建项目仍然失败:
main.cpp:5:致命错误:MyAlgorithmClass.h: No such file or directory
我在MyGUI中引用MyAlgorithm的地方列表(所有在"MyGUI"的项目属性中):
- C/c++ Include Paths and Symbols(使用"Add Include Path from Workspace…")
- C/c++项目路径(选项卡"Projects",选中"MyAlgorithm"项目列表中的"Required Projects on build path"
- 项目参考,在"MyGUI项目参考"列表中选中"MyAlgorithm"项目
虽然构建过程失败,但当我试图将"MyGUI"项目包含在"MyAlgorithmClass.h"中时,Eclipse/CDT自动完成功能确实建议存在"MyAlgorithmClass.h"。我还注意到,更改项目设置(如上面列表中所述)不会触发Makefile中的任何更改。
可能是Qt Eclipse集成阻止CDT相应地更新Makefile的情况,导致构建过程失败,因为缺少编译器/链接器的参数?
谢谢你的帮助!
简短的回答是QT-Eclipse集成不能正确工作。您需要为您的项目手动更新QT .pro文件:
添加库:使用语法添加任何库:
LIBS += -L<Full path to library include directory>
LIBS += -l<Eclipse Artifact>
的例子:
LIBS += -LC:/MyEclipseWorkspace/Project1/Debug
LIBS += -lProject1
这将链接libProject1。
添加包含文件:
INCLUDEPATH += <Absolute or Relative Path to include location>
的例子:
INCLUDEPATH += src ../Project2/include C:/dev/boost_1_46_1
HTH
相关文章:
- 错误-我无法在VS2019中打开新的Qt项目
- 将QT项目导入Visual Studio 2019会给我带来很多LNK2001错误
- 尝试在 QT 项目中调用 Java 代码时未找到类异常
- 无法在默认Qt项目中打开源文件"ui_QtGuiApplication.h"
- 在路径的独立Qt项目中包括外部库
- 为Qt项目树中的所有项目定义全局宏
- CMake用于C++/Qt项目中的外部库
- 如何将ICU库添加到ARM的Qt项目中
- 将libtensorflow_cc.so文件链接到QT项目
- 将网络添加到Qt项目
- 编译Qt项目,得到错误QQmlEngine:没有这样的文件或目录编译终止
- 是否可以在QT项目中使用Tensorflow C++ API?
- 在Qt C++项目中使用Go
- 编译Qt项目给出了对运算符delete(void*,unsigned int)的未定义引用
- 为Qt项目的每个模块添加一个包含
- 如何使用.UI文件在QT Creator中使用CMAKE制作GUI QT项目
- 在Qt项目中包括谷歌测试
- Qt项目与自定义共享库交叉编译Qt
- 如何从Qt C++项目运行Python函数
- 如何使用 qmake 将 pcl 库成功添加到 qt 项目中