Enrico Migliore wrote:
Hi,
I'm trying to run Classpath on WindowsXP/Cygwin, using the JC virtual
machine by Archie Cobbs.
I know for sure that JC+Classpath work well on FreeBSD, and now I'm
trying to get
the "duo" working on WindowsXP/Cygwin.
I've built successfully JC and Classpath-0.20 on Cygwin, compiled with
ECJ a simple
HelloWorld class, but when I run:
$jc HelloWorld
I got the following error:
java.lang.UnsatisfiedLinkError: failed to open native library
`/usr/local/classpath/lib/classpath/libjavanio.dll.a':
Per mission denied
at java.lang.VMThrowable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Throwable.java:498)
at java.lang.Throwable.<init>(Throwable.java:159)
at java.lang.Error.<init>(Error.java:81)
at java.lang.LinkageError.<init>(LinkageError.java:72)
at
java.lang.UnsatisfiedLinkError.<init>(UnsatisfiedLinkError.java:72)
at java.lang.VMRuntime.nativeLoad(Native Method)
at java.lang.Runtime.loadLib(Runtime.java:698)
at java.lang.Runtime.loadLibrary(Runtime.java:760)
at java.lang.System.loadLibrary(System.java:512)
at
gnu.java.nio.channels.FileChannelImpl.<clinit>(FileChannelImpl.java:86)
at java.io.FileDescriptor.<clinit>(FileDescriptor.java:63)
at java.lang.VMSystem.makeStandardInputStream(VMSystem.java)
at java.lang.System.<clinit>(System.java)
at java.lang.Math.<clinit>(Math.java:70)
at java.util.WeakHashMap.hash(WeakHashMap.java)
at java.util.WeakHashMap.internalGet(WeakHashMap.java:655)
at java.util.WeakHashMap.get(WeakHashMap.java:763)
at java.lang.VMString.intern(VMString.java:77)
at java.lang.String.intern(String.java)
at java.lang.String.<clinit>(String.java)
jc: failed to create VM
The file permissions are:
$ ls -l /usr/local/classpath/lib/classpath/
----------------------------------------------------------------
-rwxr-xr-x 1 ivan None 77520 Feb 16 01:17 cygjavaio-0.dll
-rwxr-xr-x 1 ivan None 209670 Feb 16 01:17 cygjavalang-0.dll
-rwxr-xr-x 1 ivan None 36069 Feb 16 01:17 cygjavalangreflect-0.dll
-rwxr-xr-x 1 ivan None 103623 Feb 16 01:18 cygjavanet-0.dll
-rwxr-xr-x 1 ivan None 121948 Feb 16 01:18 cygjavanio-0.dll
-rwxr-xr-x 1 ivan None 42354 Feb 16 01:18 cygjavautil-0.dll
-rwxr-xr-x 1 ivan None 11183676 Feb 16 01:18 libgtkpeer.a
-rwxr-xr-x 1 ivan None 1345 Feb 16 01:18 libgtkpeer.la
-rwxr-xr-x 1 ivan None 25836 Feb 16 01:17 libjavaio.dll.a
-rwxr-xr-x 1 ivan None 802 Feb 16 01:17 libjavaio.la
-rwxr-xr-x 1 ivan None 67398 Feb 16 01:17 libjavalang.dll.a
-rwxr-xr-x 1 ivan None 810 Feb 16 01:17 libjavalang.la
-rwxr-xr-x 1 ivan None 1688 Feb 16 01:17 libjavalangreflect.dll.a
-rwxr-xr-x 1 ivan None 838 Feb 16 01:17 libjavalangreflect.la
-rwxr-xr-x 1 ivan None 38220 Feb 16 01:18 libjavanet.dll.a
-rwxr-xr-x 1 ivan None 806 Feb 16 01:18 libjavanet.la
-rwxr-xr-x 1 ivan None 38852 Feb 16 01:18 libjavanio.dll.a
-rwxr-xr-x 1 ivan None 827 Feb 16 01:18 libjavanio.la
-rwxr-xr-x 1 ivan None 1632 Feb 16 01:18 libjavautil.dll.a
-rwxr-xr-x 1 ivan None 810 Feb 16 01:18 libjavautil.la
-rwxr-xr-x 1 ivan None 52886 Feb 16 01:19 libjawtgnu.a
-rwxr-xr-x 1 ivan None 1394 Feb 16 01:19 libjawtgnu.la
Does anybody know what's happening?
Enrico
Hi,
the problem is in the dlopen() function on Cygwin and not in Classpath.
Sorry about that :-)
Enrico