0

我有一个使用 OpenMP 的 QT 应用程序。(mingw, win8) 我想使用没有 qt creator 的 .exe 文件。我已经将所有 dll 放在构建目录中,但是当我运行 .exe 文件时仍然收到此消息。

顺便说一句,如果我从 Qt 创建者运行它,一切正常。

这是我的应用程序中唯一的 OpenMP 代码:

#pragma omp parallel for schedule(dynamic, 1)

这就是我在 .pro 文件中启用 OpenMP 的方式

QMAKE_CXXFLAGS+= -fopenmp
QMAKE_LFLAGS +=  -fopenmp

不确定是否重要,但此代码在 QThread 中有效。我的意思是我有一个用于 GUI 的线程和第二个用于计算的线程。

任何想法为什么会发生这种情况?

更新

是的,我也放在libgomp-1.dll那里。

更新 2

Dependency walker 刚刚显示了几个丢失的 microsoft dll。不要认为这是问题所在。

4

1 回答 1

0

好的,问题解决了。

我从以下位置复制了 dll:

\Qt\Qt5.5.1\5.5\mingw492_32\bin\

代替:

\Qt\Qt5.5.1\Tools\mingw492_32\bin\

也许有人会发现它有帮助。

是的,Dependency walker 在这种情况下无济于事。那个 OpenMP dll 没有丢失,它只是不是我需要的那个。

于 2016-06-04T15:08:58.767 回答