-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
When libopensc-PKCS11-x86_64.dylib is linked - it somehow gets the idea that libltdl.dylib is in /usr/local/lib, while in fact it is in /opt/local/lib:
$ ant -f build-without-ivy.xml
Buildfile: /Users/uri/src/opensc-java-andreas/build-without-ivy.xml
compile:
[mkdir] Created dir: /Users/uri/src/opensc-java-andreas/build/bin
[mkdir] Created dir: /Users/uri/src/opensc-java-andreas/java/lib
[javac] /Users/uri/src/opensc-java-andreas/build-without-ivy.xml:32: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds
[javac] Compiling 38 source files to /Users/uri/src/opensc-java-andreas/build/bin
[javac] Note: /Users/uri/src/opensc-java-andreas/java/src/org/opensc/pkcs11/spi/PKCS11SignatureSpi.java uses or overrides a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] Note: /Users/uri/src/opensc-java-andreas/java/src/org/opensc/pkcs11/PKCS11Provider.java uses unchecked or unsafe operations.
[javac] Note: Recompile with -Xlint:unchecked for details.
dist:
[mkdir] Created dir: /Users/uri/src/opensc-java-andreas/build/lib
[jar] Building jar: /Users/uri/src/opensc-java-andreas/build/lib/opensc-java.jar
[copy] Copying 5 files to /Users/uri/src/opensc-java-andreas/build/lib
[delete] Deleting directory /Users/uri/src/opensc-java-andreas/build/bin
BUILD SUCCESSFUL
Total time: 2 seconds
$ otool -L build/lib/libopensc-PKCS11-x86_64.dylib
build/lib/libopensc-PKCS11-x86_64.dylib:
libopensc-PKCS11-0.4.dylib (compatibility version 0.0.0, current version 0.0.0)
/usr/local/lib/libltdl.7.dylib (compatibility version 11.0.0, current version 11.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1213.0.0)
$ ll /usr/local/lib/libltdl.7.dylib
ls: /usr/local/lib/libltdl.7.dylib: No such file or directory
$ otool -L /opt/local/lib/libltdl.7.dylib
/opt/local/lib/libltdl.7.dylib:
/opt/local/lib/libltdl.7.dylib (compatibility version 11.0.0, current version 11.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
$
As a result, programs that try to use it fail:
/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/bin/java -Didea.launcher.port=7534 "-Didea.launcher.bin.path=/Applications/IntelliJ IDEA 14.app/Contents/bin" -Dfile.encoding=UTF-8 -classpath "/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/lib/tools.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_102.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Users/uri/SkyDrive/pkcs11Test/out/production/pkcs11Test:/Library/Java/Extensions/commons-logging-1.2.jar:/Library/Java/Extensions/opensc-java.jar:/Library/Java/Extensions/bcprov-ext-jdk15on-155.jar:/Library/Java/Extensions/junit-4.12.jar:/Applications/IntelliJ IDEA 14.app/Contents/lib/idea_rt.jar" com.intellij.rt.execution.application.AppMain burrow.pkcs11.PKCS11Test2
PKCS11Test2: setting up OpenSC-PKCS11 provider...
java.library.path = /Users/uri/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:.
Exception in thread "main" java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/libopensc-PKCS11-x86_64.dylib: dlopen(/Library/Java/Extensions/libopensc-PKCS11-x86_64.dylib, 1): Library not loaded: /usr/local/lib/libltdl.7.dylib
Referenced from: /Library/Java/Extensions/libopensc-PKCS11-x86_64.dylib
Reason: image not found
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1941)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1837)
at java.lang.Runtime.loadLibrary0(Runtime.java:870)
at java.lang.System.loadLibrary(System.java:1122)
at org.opensc.pkcs11.PKCS11Provider.<clinit>(Unknown Source)
at burrow.pkcs11.PKCS11Test2.setProvider(PKCS11Test2.java:27)
at burrow.pkcs11.PKCS11Test2.main(PKCS11Test2.java:108)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
Metadata
Metadata
Assignees
Labels
No labels