Hi,
I am developing a Qt application and a Qt Plugin library. Everything is working fine as far as I use the debug mode.
Nevertheless, when I try to compile in release mode the plugin doesn't load. I got the following error message from QPluginLoader:
Expected build key "Windows msvc release full-config" got "Windows msvc debug full-config".
I have checked all my project configuration settings in Visual Studio 2005, and they are all in release mode and without debug symbols. Also the output of the compiler states that:
1>------ Rebuild All started: Project: ExtraAnalysisTools, Configuration: Release Win32 ------ 1>Deleting intermediate and output files for project 'ExtraAnalysisTools', configuration 'Release|Win32'
So I don't know what more to do. I tried to use Dependency Walker, but for some reason it cannot load the file (sorry the output is in Japanese...)
Finally, here is the .pro file I use to generate the plugin project
TEMPLATE = lib
CONFIG += plugin
CONFIG += debug_and_release
INCLUDEPATH += ../
HEADERS = ExtraAnalysisTools.h
SOURCES = ExtraAnalysisTools.cpp
TARGET = AKL_ExtraAnalysisTools
DESTDIR = ./build_pass:CONFIG(debug, debug|release) {
unix: TARGET = $$join(TARGET,,,_debug)
else: TARGET = $$join(TARGET,,,d)
}
CONFIG(debug,debug|release):message("Debug mode")
CONFIG(release,debug|release):message("Release mode")
message( CONFIG = $$CONFIG )
Update: I use now this .pro file and get the following output:
[1] - Project MESSAGE: Debug mode
[2] - Project MESSAGE: CONFIG = lex yacc warn_on debug uic resources rtti_off exceptions_off stl_off incremental_off thread_off windows qt warn_on release incremental flat link_prl precompile_header autogen_precompile_source copy_dir_files debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe debug shared stl exceptions rtti mmx 3dnow sse sse2 def_files plugin debug_and_release
[3] - Project MESSAGE: Debug mode
[4] - Project MESSAGE: CONFIG = lex yacc warn_on debug uic resources rtti_off exceptions_off stl_off incremental_off thread_off windows debug DebugBuild Debug build_pass qt warn_on release incremental flat link_prl precompile_header autogen_precompile_source copy_dir_files debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe debug shared stl exceptions rtti mmx 3dnow sse sse2 def_files debug DebugBuild Debug build_pass plugin debug_and_release
[5] - Project MESSAGE: Release mode
[6] - Project MESSAGE: CONFIG = lex yacc warn_on debug uic resources rtti_off exceptions_off stl_off incremental_off thread_off windows release ReleaseBuild Release build_pass qt warn_on release incremental flat link_prl precompile_header autogen_precompile_source copy_dir_files debug_and_release debug_and_release_target embed_manifest_dll embed_manifest_exe debug shared stl exceptions rtti mmx 3dnow sse sse2 def_files release ReleaseBuild Release build_pass plugin debug_and_release
I noticed the debug flags in the released mode, so I also tried to add the CONFIG -= debug and CONFIG -= Debug debug to my .pro file (also combining with += release and += debug_and_release). But it didn't work.
I hope with this extra information we can get closer to the problem.
Thank you very much! It's driving me crazy xP