PDA

View Full Version : Loading plugin and "Incompatible Qt library" issue.



TorAn
8th April 2010, 21:10
My application attempts to load several plugins. It works just fine in debug mode, loading all of them. In the release mode for every plugin that I am loading with QPluginLoader::load method it returns the error:

The plugin <full path to plugin> uses incompatible Qt library.(4.6.2) [release]

Indeed, I am using Qt 4.6.2 and there are no other versions installed. Plugin directory does not have any Qt core dlls and application directory has all QtCore4 etc dlls.

Question - how to find out what is wrong in "release" mode?

faldzip
8th April 2010, 22:36
Is your release application really linking to release libraries? Check it with Dependency Walker.

TorAn
8th April 2010, 22:50
that is the first thing I did. All my plugins do not have external libs other then Qt and boost libs. Typical linker settings look like:

additional library directories:
"$(QTDIR)\lib";"$(BOOST)\stage\lib"

additional dependencies:
qtmain.lib QtCore4.lib QtSql4.lib

Depends.exe , when opening the plugin, does not see Qt-related dlls. It's understandable, because I am keeping them in the application directory. Directory structure is: <applicationdir>\Components, where <application dir> hosts the application itself and "Components" carry all plugins.

TorAn
8th April 2010, 22:56
Sorry, I missed your point. You were asking about the release app, not release plugin.

Additional dependencies there are:
qtmain.lib QtCore4.lib QtGui4.lib QtSql4.lib QtScript4.lib QtScriptTools4.lib qwt5.lib TickDataStorage.lib. The last lib, TickDataStorage.lib, is a release-mode lib with no additional dependencies

Depends.exe does not show anything in respect to the host application...

ufukgun
31st May 2010, 13:04
Hi TorAn,
did you solve this issue?

because i still get this error? :(