【问题标题】:Qt program fails to run with errors referencing libwinpthread-1Qt 程序因引用 libwinpthread-1 的错误而无法运行
【发布时间】:2014-01-11 21:51:52
【问题描述】:

我使用 Qt 框架制作了一个 C++/OpenGL 应用程序,但我无法运行 *.exe 文件。 libwinpthread-1 总是出错。

我已经阅读过有关此的文章,但所有 dll 都在 Qt 文件夹中,所以我不明白问题出在哪里。请看一下我的*.pro 文件:

TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

SOURCES += main.cpp \
    sliceobj.cpp


unix|win32: LIBS += -lOPENGL32
unix|win32: LIBS += -L$$PWD/../../../../5.0.2/mingw47_32/lib/ -lglut32

QMAKE_LFLAGS += -static-libgcc -static-libstdc++
QMAKE_CXXFLAGS_WARN_ON += -Wno-unknown-pragmas


INCLUDEPATH += $$PWD/../../../../5.0.2/mingw47_32/include

win32 {
    message("* Using settings for windows")
    INCLUDEPATH += "C:\\opencv\\build\\include" \
                   "C:\\opencv\\build\\include\\opencv" \
                   "C:\\opencv\\build\\include\\opencv2"

    LIBS += -L"C:\\opencv\\build\\x86\\vc11\\bin" \
        -lopencv_core247\
        -lopencv_highgui247\
        -lopencv_imgproc247\
        -lopencv_video247\

    LIBS += -L"C:\\opencv\\build\\x86\\vc11\\staticlib" \
        -lopencv_core247\
        -lopencv_highgui247\
        -lopencv_imgproc247\
        -lopencv_video247\
}

【问题讨论】:

  • 嗯。看起来您正在将 MinGW 和 Visual Studio 混合在同一个应用程序中。这不会很好。

标签: c++ qt dependencies


【解决方案1】:

使用Dependency Walker 查看您的代码链接的具体内容 + 运行时加载了哪些库。使用 DW 打开您的可执行文件,您将看到链接的 DLL。它们需要出现在 PATH 中或您的可执行文件旁边。按 F7 开始分析以查看在运行时加载了哪些库。这里作为快照:

【讨论】:

  • 这不应该是一个答案,而是一个评论。它有助于调试步骤,但实际上并不能解决手头的问题。
【解决方案2】:

好的,我知道这不好,但我只是将这些文件添加到调试目录中。

【讨论】:

    猜你喜欢
    • 2020-09-23
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    • 2017-03-24
    • 2016-01-13
    • 2011-05-21
    相关资源
    最近更新 更多