QCustomPlot Discussion and Comments

Custom app crashes when being runned OUTSIDE QT CreatorReturn to overview


I have included all the *.dll required for QT apps. I run the executable and an error message appears:

"Not Found The procedure entry point _ZN8QPrinter12setColorModeENS_9ColorModeE in the dynamic link library" (the original message appears in Spanish).

I am not compiling the QCustomPlot library, but using both the qcustomplot.h and qcustomplot.cpp files. In the QT Creator, the app runs, but outside not. What could I be doing wrong?

Thanks in advance.

EXACTLY the same problem compiling the sharedlib-usage example. In the QT Creator (and, by the way, after putting the ABSOLUTE path to the library, because otherwise it did not compile) yes, but outside, EXACTLY the same problem.

I have googled about the _ZN8QPrinter12setColorModeENS_9ColorModeE, but no results. Zero.

I am using Windows 8 and QtCreator 3.6.1 (QT 5.6.0).

It looks like you're missing the printsupport module.
Make sure your .pro file includes the printsupport, and upon release, you include all necessary DLL files (including QtPrintSupport.dll)

I am using version 2.0.1.

Hello DerManu.

Thanks for your answer. No, it does not seem to be the problem. In the *.pro, the printsupport is included, and I have also included the Qt5PrintSupport.dll library in the same folder where the *.exe is included. Once included that DLL, the problem appears.

Perhaps I am using one of the 10.000 versions of Qt5PrintSupport.dll library. Should I include the DLL in the *.pro too?

Even I have tried to include in the folder ALL the QT DLLs (included in QtCreator/bin path) and nothing, the same problem happens. And even, since I include the DLLs in the folder and I try again to rebuild and re-run the app in the QT Creator, it crashes... The only thing to fix it is remove the build directory and start again.

You say you're copying the DLLs from the QtCreator/bin directory. But those are not the correct DLLs for your application, those are the ones for QtCreator (because it is itself built with Qt, but probably with a different compiler/Qt version than your application, so uses different DLLs).

You should be taking the DLLs from the bin directory associated with your compiler toolchain. So for example Qt/5.4.2/mingw48_32/bin, or something like Qt/5.4.2/msvc2012/bin

You can learn more about correct application deployment here:
http://doc.qt.io/qt-5/windows-deployment.html (Windows)
http://doc.qt.io/qt-5/linux-deployment.html (Linux)

That was :-) !

Thank you very much. I have compiled the application with the kit containing the MinGW compiler, and after that, copied all the DLLs from the bin/ folder contained inside that compiler and... Voila! it works!

By the way, the project I am developing is a signal generator. For now, very simple... Intended to be, one day, a complex function generator, or even a radiocommunications simulator (with AM, FM, ASK, FSK modulations). I share you the github link: