diff options
author | Simon Marlow <marlowsd@gmail.com> | 2008-07-24 15:27:27 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2008-07-24 15:27:27 +0000 |
commit | 8edb76687dc6aec821131861ce81f6b6d8293299 (patch) | |
tree | 81e5b41f003b2ce96707cf8b485c7b89935ddaa9 /rts/Linker.c | |
parent | 8bd0e4bc3406f9c3ea3cfb23a52c1d7493cb9374 (diff) | |
download | haskell-8edb76687dc6aec821131861ce81f6b6d8293299.tar.gz |
use RTLD_LAZY instead of RTLD_NOW
RTLD_NOW apparently causes some problems, according to previous
mailing-list discussion
http://www.haskell.org/pipermail/cvs-ghc/2007-September/038570.html
Diffstat (limited to 'rts/Linker.c')
-rw-r--r-- | rts/Linker.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/rts/Linker.c b/rts/Linker.c index 07d1a1a248..7d9bc34428 100644 --- a/rts/Linker.c +++ b/rts/Linker.c @@ -1019,7 +1019,9 @@ addDLL( char *dll_name ) initLinker(); - hdl= dlopen(dll_name, RTLD_NOW | RTLD_GLOBAL); + // omitted: RTLD_NOW + // see http://www.haskell.org/pipermail/cvs-ghc/2007-September/038570.html + hdl= dlopen(dll_name, RTLD_LAZY | RTLD_GLOBAL); if (hdl == NULL) { /* dlopen failed; return a ptr to the error msg. */ |