From 9c91558e625582b91009973e7facd4156683a98b Mon Sep 17 00:00:00 2001 From: Felix Krause Date: Mon, 3 Oct 2016 11:58:21 +0200 Subject: [PATCH 1/2] Fixed compilation error with -d:nimDebugDlOpen --- lib/system/dyncalls.nim | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/system/dyncalls.nim b/lib/system/dyncalls.nim index 0a994efac3..f104e2805e 100644 --- a/lib/system/dyncalls.nim +++ b/lib/system/dyncalls.nim @@ -74,7 +74,8 @@ when defined(posix): when defined(nimDebugDlOpen): let error = dlerror() if error != nil: - c_fprintf(c_stderr, "%s\n", error) + stderr.write(error) + stderr.rawWrite("\n") proc nimGetProcAddr(lib: LibHandle, name: cstring): ProcAddr = result = dlsym(lib, name) From cee445b88904109564d58de46581b8ad00531447 Mon Sep 17 00:00:00 2001 From: Felix Krause Date: Mon, 3 Oct 2016 12:06:54 +0200 Subject: [PATCH 2/2] Display hint for -d:nimDebugDlOpen on load failure --- lib/system/dyncalls.nim | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/system/dyncalls.nim b/lib/system/dyncalls.nim index f104e2805e..fa997e9828 100644 --- a/lib/system/dyncalls.nim +++ b/lib/system/dyncalls.nim @@ -26,6 +26,8 @@ proc nimLoadLibraryError(path: string) = stderr.rawWrite("could not load: ") stderr.rawWrite(path) stderr.rawWrite("\n") + when not(defined(nimDebugDlOpen)): + stderr.rawWrite("compile with -d:nimDebugDlOpen for more information\n") quit(1) proc procAddrError(name: cstring) {.noinline.} =