QtCreator 4.4.1 MINGW和Qt 5.9.1无法调试Qt源

时间:2017-10-12 15:17:03

标签: qt mingw qt-creator

我最近在尝试使用MINGW,QtCreator,Qt安装调试Qt源时遇到了困难。 我确实创建了一个示例应用程序,使用windeployqt工具部署它并让它执行但是当我尝试调试时,让我们说步入其中一个花哨的Qt类和方法,我确实获得了汇编代码。当我试图跨过

时,我也受到了充实代码的困扰
QApplication a(argc, argv);

我确实从源代码构建了Qt,因此源代码不应成为问题,我没有移动源代码也没有删除它们。 当我使用针对qt库的objdump工具(调试版本)来了解源必须在哪里时,我发现libs指向正确的源位置。 我也尝试过使用qtcreator qt源映射,但是我确实只是想通过试图了解这些映射到底是什么,并且这个尝试并没有让我失望。 简而言之,我有qt源他们应该在哪里,但gdb由于某种原因没有得到它。 这是我在QtCreator中导入的CMakelists.txt make文件:

cmake_minimum_required (VERSION 2.6)

project(sampleapp2)

#set(DEPS -lglu32 -lopengl32 -lgdi32 -luser32)
set(QT_DEPS "")

find_package(Qt5Widgets)
if(Qt5Widgets_FOUND)
    include_directories(${Qt5Widgets_INCLUDE_DIRS})
    set(QT_DEPS ${QT_DEPS} ${Qt5Widgets_LIBRARIES})
endif()

find_package(Qt5Core)
if(Qt5Core_FOUND)
    include_directories(${Qt5Core_INCLUDE_DIRS})
    set(QT_DEPS ${QT_DEPS} ${Qt5Core_LIBRARIES})
endif()

find_package(Qt5Gui)
if(Qt5Gui_FOUND)
    include_directories(${Qt5Gui_INCLUDE_DIRS})
    set(QT_DEPS ${QT_DEPS} ${Qt5Gui_LIBRARIES})
endif()

#print qt deps (if any has been found), if not do exit
if(QT_DEPS)
    message(STATUS "Qt dependencies are: " ${QT_DEPS})
else()
    message(STATUS "Qt dependencies not found, exiting...")
    exit()
endif()

#set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

set(CXXFLAGS -g)
set(QMAKE_CXXFLAGS -g)

set(GUI_TYPE WIN32)
set(LIB_SOURCES maindialog.cpp)
set(EXE_SOURCES main.cpp)
set(UI_LIB sampleapp2ui)

QT5_WRAP_CPP(sampleapp2ui_hdr_moc maindialog.h)
QT5_WRAP_UI(sampleapp2ui_form_hdr maindialog.ui)

set(LIB_SOURCES ${LIB_SOURCES} ${sampleapp2ui_hdr_moc} ${sampleapp2ui_form_hdr})

add_library(${UI_LIB} SHARED  ${LIB_SOURCES})
#qt5_use_modules(${UI_LIB} Core Gui Widgets)
target_link_libraries(${UI_LIB} ${QT_DEPS})

add_executable(sampleapp2 ${GUI_TYPE} ${EXE_SOURCES})
target_link_libraries(sampleapp2 ${UI_LIB} ${QT_DEPS})
#target_link_libraries(sampleapp2 ${UI_LIB})
#qt5_use_modules(sampleapp2 Core Gui Widgets)

另一个有线的事情是我完全不能跳入maindialog.cpp定义这是我应该能够做的事情 - maindialog.cpp不是任何qt库的一部分 - 它是我自己的主要对话框缠绕在qt我用来专门化的资源。

谢谢你的建议!

0 个答案:

没有答案