1

I have been using qwt for some time, with the MSVC++ integrated versions of QT. Lately, I have been experimenting successfully with the QT Creator SDK, which uses the mingw-g++ tool chain, etc.

I can build qwt with no compile or link errors. However, when I try to run any executables (such as the qwt examples) I get an error

the procedure entry point ??0Brush@@QAE@W4GlobalColor@Qt@@W4BrushStyle@2@@Z could not be located in the dynamic link library QtGuid4.dll

I have tried moving the correct version of QtGuid4.dll (the one from the Mingw version of qt) into the local directory, checked my paths, etc--no joy. I have renamed the qtguid4.dll to a different name to make sure it was the one being used--it is, if I rename it, the system can't find the dll and wont run.

I do note that the C:\Qt\2009.03\qt\bin (the mingw one) is 134779 kb, while the msvc++ version is 11,380 kb--this seems like a huge discrepancy--

any ideas? things to try next? I have done the usual google searches, etc, with no success

4

1 回答 1

1

好吧,再次提出关于 sack overlow 问题的动机似乎促使我找到自己的答案。

我确实正确设置了路径,并且我的代码使用了正确的 QtGuid4.dll。

但是,我也在使用 qwtd5.dll,不幸的是,它的一个版本卡在 c:\windows\system32 中。它是使用 Visual Studio 编译的,因此使用了不同版本的 qt——所以当它引用 qtguid4.dll 时,它引用了不同的版本。当我删除 qwtd5.dll 时,我的应用程序找到了新编译的(使用 mingw)版本,一切正常

我正在使用依赖walker,当它找不到msvcrt80.dll时,这让我意识到我正在使用用Visual Studio编译的代码

于 2009-11-10T04:32:15.550 回答