From 2f88a70bf1fa9852d0e405134c458b6c2a742c9d Mon Sep 17 00:00:00 2001 From: William Bourque Date: Fri, 12 Mar 2010 22:08:41 +0000 Subject: [PATCH] Add functions to be able to set the LD_LIBRARY_PATH to C from JAVA --- .../linuxtools/lttng/jni/factory/JniTraceVersion.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/org.eclipse.linuxtools.lttng.jni/src/org/eclipse/linuxtools/lttng/jni/factory/JniTraceVersion.java b/org.eclipse.linuxtools.lttng.jni/src/org/eclipse/linuxtools/lttng/jni/factory/JniTraceVersion.java index c6a673dbef..a8125cc9f8 100644 --- a/org.eclipse.linuxtools.lttng.jni/src/org/eclipse/linuxtools/lttng/jni/factory/JniTraceVersion.java +++ b/org.eclipse.linuxtools.lttng.jni/src/org/eclipse/linuxtools/lttng/jni/factory/JniTraceVersion.java @@ -5,6 +5,7 @@ import org.eclipse.linuxtools.lttng.jni.exception.JniTraceVersionException; public class JniTraceVersion { protected native void ltt_getTraceVersion(String tracepath); + protected native void ltt_setLibraryPath(String ldLibraryPath); private int majorNumber = 0; private int minorNumber = 0; @@ -41,6 +42,11 @@ public class JniTraceVersion { // If LD_LIBRARY_PATH is not set correctly this will raise a java.lang.UnsatisfiedLinkError System.loadLibrary("lttvtraceread_loader"); + // The user's LD_LIBRARY_PATH environnement variable doesn't seem to be get passed to the C + // We will force C to load it here + String ldLibraryPath = "LD_LIBRARY_PATH:" + System.getenv("LD_LIBRARY_PATH"); + ltt_setLibraryPath(ldLibraryPath); + // Assuming the C library loaded correctly, call the JNI here. ltt_getTraceVersion(tracepath); } -- 2.34.1