0

私はlibpdJavaで使用する最初の試みを行っています。私が使用している IDE は NetBeans です。libpdの場合、Java 用のこれらのバイナリ ビルドを使用しています。コードを実行すると、java.lang.UnsatisfiedLinkError が発生します。ある時点で、次のように述べています。

依存ライブラリが見つかりません

Android では同様の質問が回答されていますが、Java では回答されていません。

編集:これは完全なエラーメッセージです:

スレッド「メイン」の例外 java.lang.UnsatisfiedLinkError: C:\Users\jaiserpe\AppData\Local\Temp\pdnative7141399841793639340.dll: java.lang.ClassLoader$NativeLibrary.load(Native Method) で依存ライブラリが見つかりませんjava.lang.ClassLoader.loadLibrary0(ClassLoader.java:1938) で java.lang.ClassLoader.loadLibrary(ClassLoader.java:1821) で java.lang.Runtime.load0(Runtime.java:809) で java.lang.System org.puredata.core.NativeLoader.loadLibraryFromJar(NativeLoader.java:121) の .load(System.java:1086) org.puredata.core.NativeLoader.loadLibrary(NativeLoader.java:97) PdBase.(PdBase.java:59) at holamundo.HolaMundo.main(HolaMundo.java:26) C:\Users\jaiserpe\AppData\Local\NetBeans\Cache\8.1\executor-snippets\run.xml:53: Java返された: 1 BUILD FAILED (合計時間:0 秒)

4

2 に答える 2

1

これらの DLL は MinGW でビルドされました。http://comments.gmane.org/gmane.comp.gnu.mingw.user/38834のテクニックを使用すると、これらのビルドに必要な DLL は次のとおりです。

$ x86_64-w64-mingw32-objdump --all-headers java-build/org/puredata/core/natives/windows/x86_64/pthreadGC2.dll | grep 'DLL Name'
    DLL Name: KERNEL32.dll
    DLL Name: msvcrt.dll
    DLL Name: WS2_32.dll
$ x86_64-w64-mingw32-objdump --all-headers java-build/org/puredata/core/natives/windows/x86_64/pdnative.dll | grep 'DLL Name'
    DLL Name: ADVAPI32.dll
    DLL Name: KERNEL32.dll
    DLL Name: msvcrt.dll
    DLL Name: msvcrt.dll
    DLL Name: pthreadGC2.dll
    DLL Name: WS2_32.dll
$ x86_64-w64-mingw32-objdump --all-headers java-build/org/puredata/core/natives/windows/x86/pdnative.dll | grep 'DLL Name'
    DLL Name: ADVAPI32.dll
    DLL Name: KERNEL32.dll
    DLL Name: msvcrt.dll
    DLL Name: msvcrt.dll
    DLL Name: pthreadGC2.dll
    DLL Name: WS2_32.dll
$ x86_64-w64-mingw32-objdump --all-headers java-build/org/puredata/core/natives/windows/x86/pthreadGC2.dll | grep 'DLL Name'
    DLL Name: KERNEL32.dll
    DLL Name: msvcrt.dll
    DLL Name: WS2_32.dll

これらの依存関係がすべてシステム上で見つからない場合、または単に古くなっている場合は、おそらく DLL を再コンパイルするとうまくいくでしょう。

幸運を。

于 2016-02-06T20:09:43.490 に答える