From 864cf2a6cd658e4b98e1248e9aaab6fe6afc038f Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Tue, 21 Oct 2014 11:15:55 +0200 Subject: Add DeepBind option to QLibrary Adds an option to request the RTLD_DEEPBIND flag to dlopen. On Linux this can be used to force a library to resolve global symbols locally instead of using the similarly named symbols already loaded. This makes it possible to load and use plugins linked against Qt 4 without crashing. [ChangeLog][QtCore][QLibrary] Added DeepBindHint which maps to RTLD_DEEPBIND on Linux making it possible to load libraries with external symbols that clash with already loaded ones, such as plugins linked to Qt4. Change-Id: I4edb4af68e4a47e932a87d108360dba8d91dc34a Reviewed-by: Thiago Macieira --- src/corelib/plugin/qlibrary.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/corelib/plugin/qlibrary.h') diff --git a/src/corelib/plugin/qlibrary.h b/src/corelib/plugin/qlibrary.h index 77fe432761..327af8aada 100644 --- a/src/corelib/plugin/qlibrary.h +++ b/src/corelib/plugin/qlibrary.h @@ -53,7 +53,8 @@ public: ResolveAllSymbolsHint = 0x01, ExportExternalSymbolsHint = 0x02, LoadArchiveMemberHint = 0x04, - PreventUnloadHint = 0x08 + PreventUnloadHint = 0x08, + DeepBindHint = 0x10 }; Q_DECLARE_FLAGS(LoadHints, LoadHint) -- cgit v1.2.3