Running JaxoDraw-2.0-0 on a 64bit java installation, the program first executes fine and works for most parts, but trying to draw a gluon object gives the crash dump below. This is evidently a bug in the java virtual machine 64bit version, so there is nothing we can do about it. The only workaround is to install a 32bit version and use this to run JaxoDraw.
-bash-3.2$ jaxodraw
#
# An unexpected error has been detected by Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00002aab2c82030b, pid=7511, tid=1080277312
#
# Java VM: Java HotSpot(TM) 64-Bit Server VM (11.0-b16 mixed mode linux-amd64)
# Problematic frame:
# C [libdcpr.so+0x1330b]
#
# An error report file with more information is saved as:
# /home/qopt/theussl/hs_err_pid7511.log
#
# If you would like to submit a bug report, please visit:
# http://java.sun.com/webapps/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#
/usr/share/jaxodraw/runme.bsh: line 178: 7511 Aborted $JAVA
-Xbootclasspath/a:$_BOOTCLASSPATH -jar $JARFILE $*
This was seen for the two systems below, which are both Linux systems. One user reported that running JD on Windows x64 with java 1.6.0_11, and 64-bit Server VM seems to work.
--------------- S Y S T E M ---------------
OS:CentOS release 5.2 (Final)
uname:Linux 2.6.18-92.1.22.el5 #1 SMP Tue Dec 16 11:57:43 EST 2008 x86_64
libc:glibc 2.5 NPTL 2.5
rlimit: STACK 10240k, CORE 0k, NPROC 71424, NOFILE 1024, AS infinity
load average:0.04 0.05 0.01
CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 7 stepping 6, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3
Memory: 4k page, physical 7873740k(6773616k free), swap 8191992k(8191992k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (11.0-b16) for linux-amd64 JRE (1.6.0_11-b03), built on Nov 10 2008 01:28:14 by "java_re" with gcc 3.2.2 (SuSE Linux)
--------------- S Y S T E M ---------------
OS:lenny/sid
uname:Linux 2.6.27-7-generic #1 SMP Tue Nov 4 19:33:06 UTC 2008 x86_64
libc:glibc 2.8.90 NPTL 2.8.90
rlimit: STACK 8192k, CORE 0k, NPROC 35840, NOFILE 1024, AS infinity
load average:1.83 1.96 1.90
CPU:total 2 (2 cores per cpu, 1 threads per core) family 6 model 7 stepping 10, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3
Memory: 4k page, physical 3885288k(32148k free), swap 9759476k(9754264k free)
vm_info: Java HotSpot(TM) 64-Bit Server VM (11.0-b15) for linux-amd64 JRE (1.6.0_10-b33), built on Sep 26 2008 01:10:29 by "java_re" with gcc 3.2.2 (SuSE Linux)
It also seems to depend on the Java version, see
http://sourceforge.net/mailarchive/forum.php?thread_name=49CF8669.1050206%40nd.edu&forum_name=jaxodraw-discuss
I've experienced the same problem with Java SE 1.6.0_14-b08 under Windows 7 x64, with both the precompiled binary and a copy I compiled myself.
Only gluon lines have the problem. Gluon arcs, circles and beziers have no problems.
Proud new owner of a MacBook, I am able to reproduce this problem myself now. Here's the fix:
On the command line:
java -jar /Applications/JaxoDraw.app/Contents/Resources/Java/jaxodraw-2.0-1.jar
crashes, but
java -d32 -jar /Applications/JaxoDraw.app/Contents/Resources/Java/jaxodraw-2.0-1.jar
works. To get the Mac Application bundle to work, you have to edit /Applications/JaxoDraw.app/Contents/Info.plist and add the property
<key>JVMArchs</key>
<array><string>i386</string></array>
inside the Java dictionary. Note that changing the Java version in the Java Preferences bundle didn't seem to change anything for me.
Now it's not completely clear under which circumstances this crash happens exactly but it seems restricted to 64bit HotSpot server. If you experience the problem on another architecture, you will probably fix it with steps similar to the above. Eg the linux rpm executes a shell script /usr/bin/jaxodraw, where adding the -d32 option as above should work around the issue.
I can't reproduce this.
Can someone check that it's still a problem?
Apparently it occurred only for Java v6 ("1.6.0"), not v5.
Since v7 ("1.7.0") is now out, maybe it was fixed.
(Warning: The standard update to Java on OS X affects the GUI, not the CLI.
For the latter, one needs to download the JDK. See end of
http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/mac-faq.html#commandLineJava )