jamvm-general Mailing List for JamVM
Brought to you by:
rlougher
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(44) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(5) |
Feb
|
Mar
(33) |
Apr
(12) |
May
(18) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(33) |
Oct
(16) |
Nov
(35) |
Dec
(25) |
2006 |
Jan
(44) |
Feb
(1) |
Mar
(38) |
Apr
(14) |
May
(42) |
Jun
(8) |
Jul
(9) |
Aug
(5) |
Sep
(1) |
Oct
(16) |
Nov
(14) |
Dec
(16) |
2007 |
Jan
(3) |
Feb
(17) |
Mar
(19) |
Apr
(16) |
May
(7) |
Jun
(17) |
Jul
(22) |
Aug
(7) |
Sep
|
Oct
(28) |
Nov
(15) |
Dec
(4) |
2008 |
Jan
(4) |
Feb
(21) |
Mar
(16) |
Apr
(11) |
May
(18) |
Jun
(25) |
Jul
(8) |
Aug
(14) |
Sep
(5) |
Oct
(35) |
Nov
(8) |
Dec
(30) |
2009 |
Jan
(2) |
Feb
(2) |
Mar
(8) |
Apr
(9) |
May
(14) |
Jun
(9) |
Jul
(10) |
Aug
(7) |
Sep
(8) |
Oct
(4) |
Nov
(12) |
Dec
(2) |
2010 |
Jan
(12) |
Feb
(16) |
Mar
(16) |
Apr
(5) |
May
(4) |
Jun
(4) |
Jul
(3) |
Aug
(11) |
Sep
(2) |
Oct
|
Nov
(1) |
Dec
(4) |
2011 |
Jan
(1) |
Feb
|
Mar
(43) |
Apr
(1) |
May
(1) |
Jun
(13) |
Jul
(21) |
Aug
(11) |
Sep
(3) |
Oct
|
Nov
|
Dec
(1) |
2012 |
Jan
|
Feb
(5) |
Mar
(1) |
Apr
|
May
(1) |
Jun
(19) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
|
Nov
(2) |
Dec
(12) |
2013 |
Jan
|
Feb
(1) |
Mar
(10) |
Apr
(22) |
May
(1) |
Jun
(3) |
Jul
|
Aug
(2) |
Sep
(6) |
Oct
(3) |
Nov
(4) |
Dec
(3) |
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(11) |
Jun
(4) |
Jul
(1) |
Aug
(4) |
Sep
|
Oct
(16) |
Nov
|
Dec
|
2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(1) |
From: Rizwan <ri...@ce...> - 2018-12-07 15:48:28
|
Hi All, Running a Java application using jamvm which links a third party library is not able to link. Java version used.. root@FX:/apps# java -jamvm -version openjdk version "1.8.0_102" OpenJDK Runtime Environment (build 1.8.0_102-8u102-b14.1-2-b14) JamVM (build 2.0.0, inline-threaded interpreter with stack-caching) root@FX:/apps# I have set LD_LIBRARY_PATH correctly. root@FX:~# echo $LD_LIBRARY_PATH /platform/lib/ root@FX:~# root@FX:~# java -jamvm -jar /apps/RFIDSampleApp1.jar Exception in thread "main" java.lang.reflect.InvocationTargetException 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 org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58) Caused by: java.lang.UnsatisfiedLinkError: RFID_Connect at com.mot.rfid.api3.API3Natives.RFID_Connect(Native Method) at com.mot.rfid.api3.API3Natives.Connect(API3Natives.java:595) at com.mot.rfid.api3.RFIDReader.connect(RFIDReader.java:375) at org.zebra.RFIDSample4App.RFIDSample4App.connectToReader(RFIDSample4App.java:1517) at org.zebra.RFIDSample4App.RFIDSample4App.<init>(RFIDSample4App.java:167) at org.zebra.RFIDSample4App.RFIDSample4App.main(RFIDSample4App.java:1562) ... 5 more root@FX:~# While I am able to run a sample hello application... root@FX:~# java -jamvm -jar /apps/hello.jar Hello, World Below is the verbose:jni log of linker error. Dynamic-linking native method java.net.NetworkInterface.getMacAddr0 ... JNI] [Dynamic-linking native method sun.misc.Unsafe.copyMemory ... internal] [Dynamic-linking native method sun.misc.Unsafe.putByte ... internal] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.opendir0 ... JNI] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.readdir ... JNI] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.closedir ... JNI] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.open0 ... JNI] [Dynamic-linking native method sun.nio.ch.IOUtil.initIDs ... JNI] [Dynamic-linking native method sun.nio.ch.IOUtil.iovMax ... JNI] [Dynamic-linking native method sun.nio.ch.FileChannelImpl.initIDs ... JNI] [Dynamic-linking native method sun.nio.ch.FileDispatcherImpl.init ... JNI] [Dynamic-linking native method sun.nio.ch.FileDispatcherImpl.close0 ... JNI] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.lstat0 ... JNI] [Dynamic-linking native method sun.nio.fs.UnixNativeDispatcher.unlink0 ... JNI] [Dynamic-linking native method sun.nio.ch.NativeThread.init ... JNI] [Dynamic-linking native method sun.nio.ch.NativeThread.current ... JNI] [Dynamic-linking native method sun.misc.Unsafe.pageSize ... internal] [Dynamic-linking native method sun.misc.Unsafe.getLongVolatile ... internal] [Dynamic-linking native method sun.misc.Unsafe.setMemory ... internal] [Dynamic-linking native method sun.nio.ch.FileDispatcherImpl.write0 ... JNI] [Dynamic-linking native method com.mot.rfid.api3.API3Natives.RFID_Connect ... ] [Dynamic-linking native method java.io.FileOutputStream.writeBytes ... JNI] Exception in thread "main" [Dynamic-linking native method java.lang.System.identityHashCode ... JNI] java.lang.reflect.InvocationTargetException [Dynamic-linking native method java.lang.Throwable.getStackTraceDepth ... JNI] [Dynamic-linking native method java.lang.Throwable.getStackTraceElement ... JNI] 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 org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58) Caused by: java.lang.UnsatisfiedLinkError: RFID_Connect at com.mot.rfid.api3.API3Natives.RFID_Connect(Native Method) at com.mot.rfid.api3.API3Natives.Connect(API3Natives.java:595) at com.mot.rfid.api3.RFIDReader.connect(RFIDReader.java:375) at org.zebra.RFIDSample4App.RFIDSample4App.connectToReader(RFIDSample4App.java:1517) at org.zebra.RFIDSample4App.RFIDSample4App.<init>(RFIDSample4App.java:167) at org.zebra.RFIDSample4App.RFIDSample4App.main(RFIDSample4App.java:1562) ... 5 more [Dynamic-linking native method java.io.UnixFileSystem.delete0 ... JNI] root@FX:/apps# I do not get the UnsatisfiedLinkError error with java "OpenJDK Zero VM (build 25.102-b14, interpreted mode) " root@FX:/apps# java -jar /apps/RFIDSampleApp1.jar Connected to 127.0.0.1 .................................................. Welcome to RFID API3 Java Standard Sample Application .................................................. Thanks Rizwan |
From: Somshekar C K. <som...@gm...> - 2018-11-08 08:29:27
|
Hi Rob and All, Need your suggestion on which is better to be used, that will help for our embedded system application We are working to use JamVM jvm instead of zero hotspot jvm We intend to use JamVM 2.0.0, we need your feedback on pros, cons which suits better of the 2 below. 1 JamVM 2.0.0 compiled with GNU Classpath library using Java 1.5. (as by default Java 1.8 is disabled) -> JamVM 2.0.0, Java 1.5 or 2 JamVM 2.0.0 compiled with OpenJDK Class library using Java 1.8. -> JamVM 2.0.0 Java 1.8 we are using Yocto to build the same. I have not yet compiled for OpenJDK Class library. Thanks in advance Regards Somshekar C Kadam 9036660538 |
From: Dana M. <k6...@co...> - 2018-01-06 07:37:10
|
On 1/5/2018 9:46 PM, A Z wrote: > To whom is may concern, > > > I am having /*great*/ problems building the JamVM so that it can run on 64 bit Windows 10 > > (or nearby, 8 or 7). Could someone please put together a JamVM build for 64 bit > > Windows and post the offline installer and download somewhere, and then tell > > me where that URL is, please? > > It's open-source for a reason. Figure it out, make an installer yourself. ... or offer to pay someone to do it for you. Open source doesn't invite beggars. Cheers, Dana |
From: A Z <pow...@li...> - 2018-01-06 06:20:12
|
To whom is may concern, I am having great problems building the JamVM so that it can run on 64 bit Windows 10 (or nearby, 8 or 7). Could someone please put together a JamVM build for 64 bit Windows and post the offline installer and download somewhere, and then tell me where that URL is, please? |
From: A Z <pow...@li...> - 2017-12-15 05:23:46
|
-Is it true or not that the JamVM Java VM support accuracy mode when it comes to float and double arithmetic? Double a = 0.1; Double b = 0.1; out.println(a*b == 0.01); //true -Can JamVM compile and run java programs via .class and .jar on Windows 10 64 bit? -There are problems online with the key installers for MinGW-64, alongside issues with compile and build versions of key packages for JamVM, at this time. Could someone please put together a Windows 10 64 bit installer of a working build of JamVM and uploading that, please? |
From: Lingyu Z. <lyn...@gm...> - 2017-07-13 14:57:14
|
Macro IS_OBJECT(ptr) is used during scaning C or java stack. However its implementation is not reliable. This macro only makes sure ptr is in range of (heapbase, heaplimit). When there's a long value happends to be in that range, jamvm will treat the value as a root reference and marks it. In my Linux configuration, the gc heap range is (0x7fffe7428000, 0x7fffe8428000), the following code verifies my point. public class TestOStack { public long a; public void setA(long i) { System.gc(); a = i; } public static void main(String args[]) { TestOStack o = new TestOStack(); o.setA(*0x7fffe7728000L*); } } During GC, 0x*7fffe7728000* will be marked. Though the false mark does not effect the correctness of the heap management, and only leads to only a 8-byte heap leak which is not permanent. I think IS_OBJECT should check the object's header, to ensure a alloc bit is set. Though the extra check is still not 100% reliable, it could reduce false mark posibility. |
From: Steven G. <st...@mu...> - 2016-10-20 14:12:22
|
On Thu, 20 Oct 2016 09:44:13 +0800 Diaz Soho <soh...@gm...> wrote: > Hi all, > > I have finish build jdk8u with --openjdk-target=mips-linux > --with-jvm-variants=zero. > > but I can not make sure where is the output for my jamVM ? > I guess: > jdk8u\build\linux-mips-normal-zero-fastdebug\hotspot\linux_mips_zero\fastdebug\libjvm.so, > and anyother? > > like : > jdk8u\build\linux-mips-normal-zero-fastdebug\jdk\lib\mips\*.so files? > > or others? > Accidentally hit send after I wrote very little. JamVM is not part of OpenJDK, you have to build it alone. After building JamVM's JVM library. On Debian at least, modifying for your architecture accordingly: Place the library in the corresponding location at `/usr/lib/jvm/java-8-openjdk-powerpc/jre/lib/ppc/jamvm/libjvm.so`. Modify `/etc/java-8-openjdk/jvm-powerpc.cfg`, add `-jamvm KNOWN`. Then you should be able to use `java -jamvm -version` to see if it works. |
From: Steven G. <st...@mu...> - 2016-10-20 14:07:23
|
On Thu, 20 Oct 2016 09:44:13 +0800 Diaz Soho <soh...@gm...> wrote: > Hi all, > > I have finish build jdk8u with --openjdk-target=mips-linux > --with-jvm-variants=zero. > > but I can not make sure where is the output for my jamVM ? > I guess: > jdk8u\build\linux-mips-normal-zero-fastdebug\hotspot\linux_mips_zero\fastdebug\libjvm.so, > and anyother? > > like : > jdk8u\build\linux-mips-normal-zero-fastdebug\jdk\lib\mips\*.so files? > > or others? > OpenJDK does not include JamVM, you have to build it separate. On Linux, once you build JamVM, modify the following file (according to your architecture): |
From: Diaz S. <soh...@gm...> - 2016-10-20 10:26:15
|
Hi all, Originally , I use GNU Classpath for JamVM when I run my Java application. But my Java application need new classpath like Java(TM) SE Runtime Environment (build 1.8.0_91-b14). My java application maynot workable with GNU Classpath. I would like to use openjdk for that. I use the command to run my java application on my embedded platform: jamvm -verbose -Xbootclasspath:/usr/share/jamvm/classes:/usr/share/classpath -jar ./my_java_app.jar Does anyone have idea: if I would like to use openjdk to do the same thing above, is it possible? then how to get workable if possible? Thanks! Best Regards, DiazSoho |
From: Diaz S. <soh...@gm...> - 2016-10-20 01:44:20
|
Hi all, I have finish build jdk8u with --openjdk-target=mips-linux --with-jvm-variants=zero. but I can not make sure where is the output for my jamVM ? I guess: jdk8u\build\linux-mips-normal-zero-fastdebug\hotspot\linux_mips_zero\fastdebug\libjvm.so, and anyother? like : jdk8u\build\linux-mips-normal-zero-fastdebug\jdk\lib\mips\*.so files? or others? |
From: Nils A. <nil...@we...> - 2016-05-30 17:38:51
|
Hello, I can’t get JamVM to work anymore because it always gets killed with a segfault. It worked before, I don’t know what I changed. I tried rebuilding several times. I use it with OpenJDK7, I build it with ./configure --with-java-runtime-library=openjdk7 make make install and then copy the libjvm.so to a jamvm Directory in the OpenJDK Directory and run programs with java -jamvm MyClass My Platform is 4.1.24-1-MANJARO on x86_64. The Output of executing a HelloWorld Program with verbose is: java -jamvm -verbose HelloWorld [Loaded java/lang/Object from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Object] [Loaded java/io/Serializable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/io/Serializable] [Loaded java/lang/reflect/AnnotatedElement from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/reflect/AnnotatedElement] [Loaded java/lang/reflect/GenericDeclaration from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/reflect/GenericDeclaration] [Loaded java/lang/reflect/Type from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/reflect/Type] [Loaded java/lang/Class from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Class] [Loaded java/lang/ClassLoader from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ClassLoader] [Loaded java/lang/Comparable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Comparable] [Loaded java/lang/CharSequence from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/CharSequence] [Loaded java/lang/String from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/String] [Loaded java/lang/Cloneable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Cloneable] [Loaded java/lang/StackTraceElement from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/StackTraceElement] [Created array class [Ljava/lang/StackTraceElement;] [Loaded java/lang/Throwable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Throwable] [Loaded java/lang/Error from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Error] [Loaded java/lang/LinkageError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/LinkageError] [Loaded java/lang/BootstrapMethodError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/BootstrapMethodError] [Loaded java/lang/VirtualMachineError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/VirtualMachineError] [Loaded java/lang/InternalError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/InternalError] [Loaded java/lang/ClassFormatError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ClassFormatError] [Loaded java/lang/IncompatibleClassChangeError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IncompatibleClassChangeError] [Loaded java/lang/NoSuchFieldError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/NoSuchFieldError] [Loaded java/lang/OutOfMemoryError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/OutOfMemoryError] [Loaded java/lang/NoSuchMethodError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/NoSuchMethodError] [Loaded java/lang/InstantiationError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/InstantiationError] [Loaded java/lang/IllegalAccessError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IllegalAccessError] [Loaded java/lang/Exception from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Exception] [Loaded java/lang/RuntimeException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/RuntimeException] [Loaded java/lang/ClassCastException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ClassCastException] [Loaded java/lang/StackOverflowError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/StackOverflowError] [Loaded java/lang/ArithmeticException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ArithmeticException] [Loaded java/lang/AbstractMethodError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/AbstractMethodError] [Loaded java/lang/ArrayStoreException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ArrayStoreException] [Loaded java/lang/NullPointerException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/NullPointerException] [Loaded java/lang/NoClassDefFoundError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/NoClassDefFoundError] [Loaded java/lang/UnsatisfiedLinkError from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/UnsatisfiedLinkError] [Loaded java/lang/InterruptedException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/InterruptedException] [Loaded java/lang/ReflectiveOperationException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ReflectiveOperationException] [Loaded java/lang/InstantiationException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/InstantiationException] [Loaded java/lang/ClassNotFoundException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ClassNotFoundException] [Loaded java/lang/IllegalAccessException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IllegalAccessException] [Loaded java/lang/IllegalArgumentException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IllegalArgumentException] [Loaded java/lang/NegativeArraySizeException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/NegativeArraySizeException] [Loaded java/lang/IllegalThreadStateException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IllegalThreadStateException] [Loaded java/lang/IllegalMonitorStateException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IllegalMonitorStateException] [Loaded java/lang/IndexOutOfBoundsException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/IndexOutOfBoundsException] [Loaded java/lang/ArrayIndexOutOfBoundsException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ArrayIndexOutOfBoundsException] [Loaded java/lang/StringIndexOutOfBoundsException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/StringIndexOutOfBoundsException] [Loaded sun/reflect/FieldAccessor from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/FieldAccessor] [Loaded sun/reflect/MagicAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/MagicAccessorImpl] [Loaded sun/reflect/FieldAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/FieldAccessorImpl] [Loaded sun/reflect/UnsafeFieldAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/UnsafeFieldAccessorImpl] [Loaded sun/reflect/UnsafeStaticFieldAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/UnsafeStaticFieldAccessorImpl] [Loaded sun/reflect/ConstantPool from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/ConstantPool] [Loaded java/security/PrivilegedActionException from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/PrivilegedActionException] [Loaded sun/reflect/MethodAccessor from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/MethodAccessor] [Loaded sun/reflect/MethodAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/MethodAccessorImpl] [Loaded sun/reflect/ConstructorAccessor from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/ConstructorAccessor] [Loaded sun/reflect/ConstructorAccessorImpl from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/reflect/ConstructorAccessorImpl] [Loaded java/nio/Buffer from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/nio/Buffer] [Loaded sun/nio/ch/DirectBuffer from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/nio/ch/DirectBuffer] [Loaded java/nio/ByteBuffer from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/nio/ByteBuffer] [Loaded java/nio/MappedByteBuffer from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/nio/MappedByteBuffer] [Loaded java/nio/DirectByteBuffer from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/nio/DirectByteBuffer] [Loaded java/io/ObjectStreamField from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/io/ObjectStreamField] [Created array class [Ljava/io/ObjectStreamField;] [Loaded java/lang/Runnable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Runnable] [Loaded java/lang/Thread from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Thread] [Loaded java/lang/Thread$UncaughtExceptionHandler from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Thread$UncaughtExceptionHandler] [Loaded java/lang/ThreadGroup from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/ThreadGroup] [Created primitive class char] [Created array class [C] [Loaded java/lang/System from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/System] [Created array class [Ljava/lang/ThreadGroup;] [Loaded java/security/Guard from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/Guard] [Loaded java/security/Permission from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/Permission] [Loaded java/security/BasicPermission from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/BasicPermission] [Loaded java/lang/RuntimePermission from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/RuntimePermission] [Loaded java/security/AccessController from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/AccessController] [Loaded java/security/AccessControlContext from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/security/AccessControlContext] [Loaded sun/misc/Signal from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class sun/misc/Signal] [Loaded java/util/Map from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Map] [Loaded java/util/Dictionary from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Dictionary] [Loaded java/util/Hashtable from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Hashtable] [Loaded java/lang/Number from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Number] [Loaded java/lang/Float from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Float] [Created primitive class float] [Loaded java/util/Map$Entry from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Map$Entry] [Loaded java/util/Hashtable$Entry from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Hashtable$Entry] [Created array class [Ljava/util/Hashtable$Entry;] [Loaded java/lang/Math from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Math] [Loaded java/lang/Double from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/lang/Double] [Created primitive class double] [Loaded java/util/Properties from /usr/lib/jvm/java-8-openjdk/jre/lib/rt.jar] [Linking class java/util/Properties] Segmentation fault (core dumped) I appreciate any help. Thanks, Nils Axer |
From: Frieder B. <ber...@go...> - 2016-04-29 08:50:45
|
The installation guide for JamVM states, that you need a normal openJDK build, in which you replace the libjvm.so with the one produced by the JamVM build. This way, one uses the starting executable of the openJDK and not the one of JamVM. If you use GNU classpath, the starting executable of JamVM is used. I would like to do the same while using the java *.class files of openJDK. I was able to get the classloading started (using a simple HelloWorld), but it stops somewhere after loading java/security/Guard (list of the classes that are loaded is provided below) I always get a segfault in src/thread.c in getExecEnv (): threadSelf returns a null pointer even though it has some valid value before. The same libjvm.so used inside openJDK runs fine, but for the project I am working on, JamVM should be the starting point. With rt.jar I meant the standard Java classes, that are provided by openJDK. I'm confused why the null pointer occurs and if it is possible what I try to do. Classname loaded: java/lang/ClassLoader Classname loaded: java/lang/Class Classname loaded: java/io/Serializable Classname loaded: java/lang/Object Classname loaded: java/lang/reflect/GenericDeclaration Classname loaded: java/lang/reflect/AnnotatedElement Classname loaded: java/lang/reflect/Type Classname loaded: java/lang/String Classname loaded: java/lang/Comparable Classname loaded: java/lang/CharSequence Classname loaded: java/lang/Cloneable Classname loaded: java/lang/StackTraceElement Classname loaded: java/lang/Throwable Classname loaded: java/lang/BootstrapMethodError Classname loaded: java/lang/LinkageError Classname loaded: java/lang/Error Classname loaded: java/lang/InternalError Classname loaded: java/lang/VirtualMachineError Classname loaded: java/lang/ClassFormatError Classname loaded: java/lang/NoSuchFieldError Classname loaded: java/lang/IncompatibleClassChangeError Classname loaded: java/lang/OutOfMemoryError Classname loaded: java/lang/NoSuchMethodError Classname loaded: java/lang/InstantiationError Classname loaded: java/lang/IllegalAccessError Classname loaded: java/lang/ClassCastException Classname loaded: java/lang/RuntimeException Classname loaded: java/lang/Exception Classname loaded: java/lang/StackOverflowError Classname loaded: java/lang/ArithmeticException Classname loaded: java/lang/AbstractMethodError Classname loaded: java/lang/ArrayStoreException Classname loaded: java/lang/NullPointerException Classname loaded: java/lang/NoClassDefFoundError Classname loaded: java/lang/UnsatisfiedLinkError Classname loaded: java/lang/InterruptedException Classname loaded: java/lang/InstantiationException Classname loaded: java/lang/ReflectiveOperationException Classname loaded: java/lang/ClassNotFoundException Classname loaded: java/lang/IllegalAccessException Classname loaded: java/lang/IllegalArgumentException Classname loaded: java/lang/NegativeArraySizeException Classname loaded: java/lang/IllegalThreadStateException Classname loaded: java/lang/IllegalMonitorStateException Classname loaded: java/lang/ArrayIndexOutOfBoundsException Classname loaded: java/lang/IndexOutOfBoundsException Classname loaded: java/lang/StringIndexOutOfBoundsException Classname loaded: sun/reflect/UnsafeStaticFieldAccessorImpl Classname loaded: sun/reflect/UnsafeFieldAccessorImpl Classname loaded: sun/reflect/FieldAccessorImpl Classname loaded: sun/reflect/FieldAccessor Classname loaded: sun/reflect/MagicAccessorImpl Classname loaded: sun/reflect/ConstantPool Classname loaded: java/security/PrivilegedActionException Classname loaded: sun/reflect/MethodAccessorImpl Classname loaded: sun/reflect/MethodAccessor Classname loaded: sun/reflect/ConstructorAccessorImpl Classname loaded: sun/reflect/ConstructorAccessor Classname loaded: java/nio/Buffer Classname loaded: java/nio/DirectByteBuffer Classname loaded: sun/nio/ch/DirectBuffer Classname loaded: java/nio/MappedByteBuffer Classname loaded: java/nio/ByteBuffer Classname loaded: java/io/ObjectStreamField Classname loaded: java/lang/Thread Classname loaded: java/lang/Runnable Classname loaded: java/lang/ThreadGroup Classname loaded: java/lang/Thread$UncaughtExceptionHandler Classname loaded: java/lang/System Classname loaded: java/lang/RuntimePermission Classname loaded: java/security/BasicPermission Classname loaded: java/security/Permission Classname loaded: java/security/Guard 2016-04-28 18:07 GMT+02:00 Andrew Hughes <gnu...@re...>: > ----- Original Message ----- > > Hey Guys, > > > > the Readme for JamVM describes two ways to use it, one with Gnuclasslib > and > > one with openJDK. > > > > Even so, is it possible to start the JamVM executable and tell it where > the > > *.class-files of the openJDK are to reduce the overhead of IcedTea? > > I tried it, but only get the following message on the terminal: > > Exception occurred while VM initialising. > > java/lang/NoClassDefFoundError: java/lang/ClassLoader > > > > Any help would be appreciated! > > > > Frieder > > > > > ------------------------------------------------------------------------------ > > Find and fix application performance issues faster with Applications > Manager > > Applications Manager provides deep performance insights into multiple > tiers > > of > > your business applications. It resolves application problems quickly and > > reduces your MTTR. Get your free trial! > > https://ad.doubleclick.net/ddm/clk/302982198;130105516;z > > _______________________________________________ > > Jamvm-general mailing list > > Jam...@li... > > https://lists.sourceforge.net/lists/listinfo/jamvm-general > > > > What "overhead"? IcedTea just builds JamVM and the class library, both > of which you need for a complete JDK. What rt.jar are you trying to use > with it? > -- > Andrew :) > > Senior Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: ed25519/35964222 (hkp://keys.gnupg.net) > Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222 > > > |
From: Andrew H. <gnu...@re...> - 2016-04-28 16:07:53
|
----- Original Message ----- > Hey Guys, > > the Readme for JamVM describes two ways to use it, one with Gnuclasslib and > one with openJDK. > > Even so, is it possible to start the JamVM executable and tell it where the > *.class-files of the openJDK are to reduce the overhead of IcedTea? > I tried it, but only get the following message on the terminal: > Exception occurred while VM initialising. > java/lang/NoClassDefFoundError: java/lang/ClassLoader > > Any help would be appreciated! > > Frieder > > ------------------------------------------------------------------------------ > Find and fix application performance issues faster with Applications Manager > Applications Manager provides deep performance insights into multiple tiers > of > your business applications. It resolves application problems quickly and > reduces your MTTR. Get your free trial! > https://ad.doubleclick.net/ddm/clk/302982198;130105516;z > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general > What "overhead"? IcedTea just builds JamVM and the class library, both of which you need for a complete JDK. What rt.jar are you trying to use with it? -- Andrew :) Senior Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: ed25519/35964222 (hkp://keys.gnupg.net) Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222 |
From: Frieder B. <ber...@go...> - 2016-04-28 13:13:07
|
Hey Guys, the Readme for JamVM describes two ways to use it, one with Gnuclasslib and one with openJDK. Even so, is it possible to start the JamVM executable and tell it where the *.class-files of the openJDK are to reduce the overhead of IcedTea? I tried it, but only get the following message on the terminal: Exception occurred while VM initialising. java/lang/NoClassDefFoundError: java/lang/ClassLoader Any help would be appreciated! Frieder |
From: Steven G. <st...@mu...> - 2016-04-19 19:07:22
|
Hello, JamVM is able to use classes which are malformed and violate the specification of the JVM. Take the given class: public class Bar { public static void main(String... __args) { XclinitX(); } static void XclinitX() { System.err.println(new Bar()); } } Compile it and modify it with a hex editor so that `XclinitX` becomes `<clinit>`. Zero prints the following: Exception in thread "main" java.lang.ClassFormatError: Bad method name at constant pool index 14 in class file Bar While JamVM prints this: Bar@97a2aa08 Bar@97a2b290 According to the virtual machine specification, one cannot `invokestatic` a static initializer. > Class and interface initialization methods are invoked > implicitly by the Java Virtual Machine; they are never invoked > directly from any Java Virtual Machine instruction, but are invoked > only indirectly as part of the class initialization process. Another issue with the following class: public class Bar { public static void main(String... __args) { } public synchronized void XinitX(int __i) { System.err.println(__i); } } Modify the compiled class in the hex editor so that `XinitX` becomes `<init>`. Zero prints: Exception in thread "main" java.lang.ClassFormatError: Method <init> in class Bar has illegal modifiers: 0x21 JamVM prints nothing. However the class should not load because the initializer of an instance cannot be synchronized (along with some other flags). This can also be seen with: public class Bar { public Bar() { System.err.println("Created"); } public void XinitX(int __v) { System.err.println(__v); } public void hello() { System.err.println("Hello"); } public static void main(String... __args) { Bar b = new Bar(); b.XinitX(2); b.hello(); } } Hex edit `XinitX` to become `<init>`. JamVM prints: Created Hello while Zero fails to load the class with: Exception in thread "main" java.lang.VerifyError: Constructor must call super() or this() before return |
From: Guillermo R. G. <gui...@gm...> - 2016-03-22 12:32:51
|
Hi all, I have found out that Object.wait is affected by date changes. Internally JamVM uses pthread_cond_timedwait, which by default uses (or should use) CLOCK_REALTIME (ref: http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_cond_timedwait.html). This means that If some other process changes the system date while a thread is waiting, then this gets messed up. For example, imagine the following sequence: - Application code calls Object.wait(timeoutValue) - JamVM computes a timeout (see monitorWait in lock.c) and calls pthread_cond_timedwait - Some other process changes the date and sets it lets say 1 hour in the past (or 1 day or...). This could be a manual call to 'date', or a process setting the date from a GPS receiver, or just anything else - Because pthread_cond_timedwait uses CLOCK_REALTIME by default, it will hang there waiting for the timeout to elapse. BTW in my setup (embedded ARM board) this problem was not visible with older versions of glibc. For example it never happened with glibc-2.16. But there were some changes in the pthread_cond_timedwait implementation (I believe this one: https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=8f861542dd0603bef99e126e509ece89514c1eeb#patch2) that seem to trigger it. On a side note, a similar problem was also present in JDK7, not sure if it has been fixed since then. See this article: https://bbossola.wordpress.com/2013/09/04/jvm-issue-concurrency-is-affected-by-changing-the-date-of-the-system/ Back to JamVM now: Wouldn't it be a good idea to use CLOCK_MONOTONIC instead of CLOCK_REALTIME for pthread_cond_timedwait ? Best, Guillermo Rodriguez Garcia gui...@gm... |
From: Robert L. <rob...@gm...> - 2016-02-29 16:56:18
|
Hi, This is due to the interpretation of what is the "base" of the stack. For JamVM, the base of the stack is where it starts from. As the stack grows down, this is the _highest_ address. However, pthread_attr_getstack returns the _lowest_ address as the base of the stack. To convert this into JamVMs interpretation the stack size needs to be added. Rob. On 29 February 2016 at 16:05, Frieder Berthold < ber...@go...> wrote: > Hey JamVM-Guys, > > i'm a bit confused by the implementation of the function nativeStackBase() > in os/linux/os.c > It uses pthread_attr_getstack(), which returns the actual stack base [1], > but then you add the size on this void* . So if this really is the > intention, could someone please explain the reason of this to me?:-) > > (The void* addition is the reason I stumbled over this, as only gnu allows > this, which I am not using) > > Greetings > Frieder > > > [1] > http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_attr_getstack.html > > > > ------------------------------------------------------------------------------ > Site24x7 APM Insight: Get Deep Visibility into Application Performance > APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month > Monitor end-to-end web transactions and take corrective actions now > Troubleshoot faster and improve end-user experience. Signup Now! > http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140 > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general > > |
From: Frieder B. <ber...@go...> - 2016-02-29 16:05:14
|
Hey JamVM-Guys, i'm a bit confused by the implementation of the function nativeStackBase() in os/linux/os.c It uses pthread_attr_getstack(), which returns the actual stack base [1], but then you add the size on this void* . So if this really is the intention, could someone please explain the reason of this to me?:-) (The void* addition is the reason I stumbled over this, as only gnu allows this, which I am not using) Greetings Frieder [1] http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_attr_getstack.html |
From: Frieder B. <ber...@go...> - 2016-01-29 12:59:24
|
Hello to all, for a project, I need JamVM on Windows 10 (with Visual Studio). In the archive there are only some entries from 2005, unfinished. If there is some more recent effort, I would appreciate a hint towards it! Thanks in advance Frieder |
From: Dana M. <k6...@co...> - 2015-08-27 03:27:26
|
I recently was running JamVM 2.0 + classpath 0.99 under OpenWRT latest on a Raspberry Pi 2 B. I kept running into the problem described in this thread: https://sourceforge.net/p/jamvm/mailman/message/1870684/ I eventually had a crazy idea and expanded the maximum heap size with -Xmx128M and the problem went away. At some point I'll binary-search for what the required heap size really is; but the issue was while loading glibj.zip, many strings are allocated for the entire jar/zipfile before even looking one entry up. I suggest trying this if you run into this issue. BTW, I am happy to report that JamVM and Classpath work well in OpenWRT 15.x and later; I maintain the package makefiles for them. Cheers, Dana K6JQ |
From: David G. <gol...@ib...> - 2015-08-21 09:54:34
|
Hi all, I want to compile jamvm statically. First I call autogen: $ ./autogen.sh --with-java-runtime-library=openjdk8 --enable-static then make: $ make -j $(nproc) compiling runs through, but i get the following error while linking: libtool: link: gcc -shared -fPIC -DPIC -Wl,--whole-archive ./.libs/libcore.a -Wl,--no-whole-archive -lz -ldl -lm -lrt -lpthread -g -O2 -Wl,-soname -Wl,libjvm.so -o .libs/libjvm.so jam.o: In function `showVersionAndCopyright': /home/goltzsch/git/jamvm/src/jam.c:110: undefined reference to `getExecutionEngineName' jam.o: In function `parseCommandLine': /home/goltzsch/git/jamvm/src/jam.c:156: undefined reference to `parseCommonOpts' /home/goltzsch/git/jamvm/src/jam.c:142: undefined reference to `sysMalloc' [... more undefined references ... ] Any suggestions? Thanks! David -- M.Sc. David Goltzsche Institute of Operating Systems and Computer Networks Distributed Systems Group TU Braunschweig www: https://www.ibr.cs.tu-bs.de/users/goltzsch mail: gol...@ib... |
From: Andrew H. <gnu...@re...> - 2015-07-08 20:16:58
|
Hi, Because of the use of assembly code for callNative.S, gcc marks the resulting object files as having executable stack. This leads to libjvm.so being marked as such, and problems ensue when using the library on hardened kernels. IcedTea has been working around this for a while by passing --noexecstack to the linker without problem. The attached patch fixes the issue at its cause, adding the appropriate markings [0] in the assembly code. Please apply this patch to JamVM. [0] https://wiki.gentoo.org/wiki/Hardened/GNU_stack_quickstart Thanks, -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: ed25519/35964222 (hkp://keys.gnupg.net) Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222 PGP Key: rsa4096/248BDC07 (hkp://keys.gnupg.net) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 |
From: Xerxes R. <xe...@za...> - 2015-01-12 09:51:51
|
OpenJDK: JVM_GetTemporaryDirectory 8033104: sun/jvmstat/monitor/MonitoredVm/CR6672135.java failing on all platforms The OpenJDK internal class sun/jvmstat/perfdata/monitor/protocol/local/PerfDataFile Has been updated to use JVM_GetTemporaryDirectory in OpenJDK 8 and 9. JamVM do not support the jvmstat framework thus this is left unimplemented. The attached JamVM path fixes the build. http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2172 |
From: Andrew H. <gnu...@re...> - 2014-10-27 14:33:13
|
----- Original Message ----- > > Den 2014-10-20 22:30, Matthias Klose skrev: > > > > - Did you try to build/run these with > > the IcedTea 2.5.3 update? At least Cacao and JamVM fail. > > > > > > I received the IcedTea 2.5.3 security update during the week and indeed > all alternative JVM broke. > http://blog.fuseyism.com/index.php/2014/10/15/security-icedtea-2-5-3-for-openjdk-7-released/ > > The OpenJDK source tree revealed the following information: > 8015256: Better class accessibility > Summary: Improve protection domain check in forName() > http://hg.openjdk.java.net/jdk7u/jdk7u/hotspot/rev/61d1e75e0a58 > http://hg.openjdk.java.net/jdk7u/jdk7u/jdk/rev/16cd2826a58f > > JVM_FindClassFromCaller appears to work quite similar to > JVM_FindClassFromClassLoader with the twist that the protection domain > that belongs to the caller class argument shall be used during the > lookup of the class. But there is no specification or unit-test in > OpenJDK documenting the desired effect, if someone have a specification > or test at hand for how JVM_FindClassFromCaller "security" shall behave > then i would like to see it. > > > > I spent some time yesterday looking into it and have filed patches to > Avian, JamVM and Cacao upstream to make the JVM's compatible with the > "security" update. > Pull request links and commits below: > > JamVM: http://sourceforge.net/p/jamvm/mailman/message/32972760/ > https://github.com/xranby/jamvm/commit/81f280b4fad847bc393ee4732c23aae9adccb327 > > CACAO JVM: > https://bitbucket.org/cacaovm/cacao-staging/pull-request/147/implement-jvm_findclassfromcaller-openjdk/ > https://bitbucket.org/xranby/cacao-staging/commits/ec6bd33b3e927738d1353e6e639e76f74d55635f > > Avian: https://github.com/ReadyTalk/avian/pull/360 > https://github.com/xranby/avian/commit/2e5990a6b0c35934b99a0a776762fab8f643599b > > Cheers > Xerxes > I mentioned this in reply to your previous post: http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2014-October/029916.html -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 |
From: Christopher F. <chr...@gm...> - 2014-10-27 11:38:09
|
I've had JamVM building for some time as a 64-bit executable on Darwin but have been using gcc to build it. I'd actually be somewhat surprised if it _didn't_ build with clang. Also, Rob, I think you did add support for darwin builds recently, but I basically copied and slightly modified your linux / x86_64 code to Darwin and it seems to be working fine for as long as I've been using it (a year or more off & on). If there are any special tests you'd like me to run, I can do that, but otherwise, I could submit a patch to the list. I guess I could test out clang support as well. © Sent from my Android On Oct 27, 2014 4:46 AM, "Robert Lougher" <rob...@gm...> wrote: > Great you've got it to build! Obviously, as a 32-bit executable you > can't use a heap of more than a couple of GB. BTW, the option is > --enable-ffi, not --enable-libffi. > > Rob. > > On 27 October 2014 00:22, Anitha B Gollamudi <ani...@gm...> > wrote: > > On 26 October 2014 11:48, Robert Lougher <rob...@gm...> wrote: > >> Yes it is active. Unfortunately there's not a lot of help that I can > >> give. Macs used to be my main computers so they were well supported > >> (under Linux and Mac OS X). However, I no longer use Macs (my last > >> Mac is from 2006 running OS X 10.5). Luckily it appears that JamVM > >> continued to be buildable on OS X at least until a year or two ago > >> (judging by feedback) but obviously this is no longer the case. > >> Without a current Mac there's not a lot I can do, so I'll probably > >> remove support entirely from the next version. > >> > >> In case this is of help, I can see the following from your original > post. > >> > >> 1) You no longer have gcc on Mac OS X. The C compiler is actually > >> Clang/LLVM, which is masquerading as gcc. I have never built JamVM > >> using LLVM as it uses several gcc features. I no idea if JamVM > >> compiles with LLVM. Even if it does compile, it may not work. > >> > >> 2) By default, it is building 64-bit executables. In the past, even > >> on 64-bit machines, gcc on Mac OS X defaulted to 32-bit. The error > >> messages you are seeing is because JamVM by default (on Mac OS X) > >> assumes it is being built for 32-bit. > >> > >> You could try configuring JamVM to use libffi, e.g. ./configure > >> --enable-ffi. As far as I'm aware, Mac OS X should still support > >> libffi. If this works you will have a 64-bit executable. > >> > >> Alternatively you could see if there is a flag to LLVM/Clang to force > >> it to build in 32-bit mode. > > > > Rob, > > > > Finally, I am able to build 1.5.4 version forcing clang to build > > > > [1] Using -m32. > > [2] Removing "interp_cflags=-fno-reorder-blocks" (Clang does not like > > this option) > > > > Bare invocation worked so presumably everything should work though I > > haven't run tests. As a side note --enable-libffi did not work either. > > Configure (clang) complained that it does not know what the option > > meant. > > > > Thanks for your prompt help > > > > -Anitha > > > ------------------------------------------------------------------------------ > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general > |