我有嘗試如下加載C庫的代碼: -無法加載從Java文件,那麼在Eclipse在Ubuntu
public ThreadAffinity() {
ctest = (CTest) Native.loadLibrary("ctest", CTest.class);
}
但是我在嘗試構建項目時,下面的錯誤;我得到的錯誤是如下: -
UnsatisfiedLinkError: Unable to load library 'libctest': liblibctest.so: cannot open shared object file: No such file or directory
at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:166)
at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:239)
at com.sun.jna.Library$Handler.<init>(Library.java:140)
at com.sun.jna.Native.loadLibrary(Native.java:393)
at com.sun.jna.Native.loadLibrary(Native.java:378)
at com.threads.ThreadAffinity.<init>(ThreadAffinity.java:11)
at com.threads.ThreadAffinity.main(ThreadAffinity.java:45)
當前工作目錄是項目和多數民衆贊成在所謂文件所在的根。我也嘗試修改LD_PRELOAD變量來指向我的文件;但是錯誤仍然存在。
它在我的OSX上工作得很好,其中dylib完全位於so文件當前的位置(項目根目錄)。 我在做什麼錯?