当qt插件在windows中不起作用时如何在eclipse cdt中创建qt应用程序

Posted

技术标签:

【中文标题】当qt插件在windows中不起作用时如何在eclipse cdt中创建qt应用程序【英文标题】:How to create qt application in eclipse cdt when qt plugin not working in windows 【发布时间】:2016-05-30 14:57:10 【问题描述】:

我已经安装了诺基亚qt插件

Qt C++ Eclipse Integration
Version: 1.6.1

但它在 Eclipse MARS 2 (4.5.2) 中不起作用。 我还安装了 qt 5.6。

所以我需要以某种方式配置我的 cdt 项目以查看 qt 库。 让

#include <QApplication>

工作 也为了使项目成功构建。

怎么做?

我尝试将 C:\Qt\5.6\mingw49_32\include 添加到项目包含目录中,但是

#include <QApplication>

不工作。

我无法为 qmake 生成的 Makefile 使用导入的 Makefile 项目,因为它包含的每个 .o 文件条目

release/EntryPoint.o: EntryPoint.cpp bios/Bios.hpp \
...
        ../../../../Qt/5.6/mingw49_32/include/QtWidgets/QLabel \
        ../../../../Qt/5.6/mingw49_32/include/QtWidgets/qlabel.h \
... 100 of lines here

对于项目中每个添加的 cpp 文件,如果没有外部 hepl,这 100 行将不会出现。将 Makefile 导入 Eclipse 会为项目提供不工作的包含。

有没有办法让 qt 与任何版本的 eclipse 一起工作?

【问题讨论】:

将 Qt Creator 或 Visual Studio 与 Qt 一起使用:***.com/questions/32894097/… 当我们有更好的 Qt 时,Eclipse 无缘无故地变得糟糕透顶。 【参考方案1】:

使用 cmake 可以解决您创建所需项目的问题。 如果您使用 *nix Makefiles、nmake、visual studio 或其他任何东西,这应该无关紧要。

编辑: 我刚刚检查了它是否与 CMake 一起使用。 安装 Qt 5.6 mingw49 和 Eclipse 4.5.2。 使用 cmake 3.5.1 创建项目后,我导入了它,它编译得很好! Path 变量有问题,但是将 exe 复制到 Qt 的 bin 文件夹是有效的(没有时间检查是什么问题)。

这里是cmake和Qt的起点:

PROJECT(minimal)
add_definitions(-DUSE_QT)
set (CMAKE_PREFIX_PATH "C://Qt//5.6//mingw49_32")

set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
find_package(Qt5Widgets REQUIRED)
find_package(Qt5Core REQUIRED)

INCLUDE_DIRECTORIES( $CMAKE_BINARY_DIR)
INCLUDE_DIRECTORIES($CMAKE_CURRENT_SOURCE_DIR)

FILE(GLOB HEADER_FILES "$CMAKE_CURRENT_SOURCE_DIR/*.h" "$CMAKE_CURRENT_SOURCE_DIR/*.h")
FILE(GLOB CPP_FILES "$CMAKE_CURRENT_SOURCE_DIR/*.cpp" "$CMAKE_CURRENT_SOURCE_DIR/*.cpp")
FILE(GLOB UI_FILES "$CMAKE_CURRENT_SOURCE_DIR/*.ui")
FILE(GLOB RC_FILES "$CMAKE_CURRENT_SOURCE_DIR/*.qrc")


QT5_ADD_RESOURCES(ENTITY_DEBUGGER_RC_SRCS $RC_FILES )

QT5_WRAP_UI( ENTITY_DEBUGGER_UI_HDRS $UI_FILES)

ADD_EXECUTABLE( minimal 
            $CPP_FILES
            $ENTITY_DEBUGGER_RC_SRCS 
            $ENTITY_DEBUGGER_UI_HDRS 
            $HEADER_FILES 
            )

SET_TARGET_PROPERTIES(minimal PROPERTIES DEBUG_POSTFIX _d)


qt5_use_modules(minimal Widgets Core)


INSTALL(TARGETS minimal
  RUNTIME DESTINATION bin
  LIBRARY DESTINATION lib
  ARCHIVE DESTINATION lib
  )

PS:我强烈同意 Eclipse 不是最好的 IDE。 还有其他一些免费的 IDE(VS、QtCreator、Sublime、Codeblocks、...)

【讨论】:

以上是关于当qt插件在windows中不起作用时如何在eclipse cdt中创建qt应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Qt:showMaximized() 在 Windows 中不起作用

Ngrok with vagrant 在 Windows 10 中不起作用

Qt serial.readall 在 5.3.1 中不起作用

在win-10中部署的qt-designer项目在win-7中不起作用

Nuxtjs toastr 和数据表插件在 adminLTE - 3 模板中不起作用

datePicker 插件在 Phonegap 2.0 中不起作用