We've talked about this as lot over the last few weeks, trying to come up with some way to maintain the Solaris support - but have come up empty. None of us have access to such a system, and it appears to be very difficult to avoid regularly breaking it. I may, as time permits, try playing with a Solaris 10 install on my local x86 machine, but I doubt that will be enough to resolve all the problems.
So for now at least, we have dropped Solaris support until an active developer with such a system joins the team. Sorry for the situation - we truly wish we had a better solution. Ralph On Oct 5, 2014, at 12:41 AM, Siegmar Gross <siegmar.gr...@informatik.hs-fulda.de> wrote: > Hi, > > I have installed openmpi-1.9.0a1git99c3999 on my machines with > Sun C 5.12 and gcc-4.9.1 and I still get SIGSEGV for my small > Java program. Furthermore I get "select: Interrupted system call" > as you can see below. I use Java-1.8.0. The error appears on > Solaris 10 Sparc and Solaris 10 x86_64. > > tyr java 104 ompi_info | grep -e MPI: -e "C compiler:" > Open MPI: 1.9.0a1 > C compiler: cc > tyr java 105 mpijavac InitFinalizeMain.java > warning: [path] bad path element > "/usr/local/openmpi-1.9_64_cc/lib64/shmem.jar": > no such file or directory > 1 warning > tyr java 106 > > > "oshmem" is only available on Linux. Is it possible that you omit > "shmem.jar" on other platforms like Solaris to avoid the above > warning, if you use "mpijavac -deprecation -Xlint:all"? > > > tyr java 107 /usr/local/gdb-7.6.1_64_gcc/bin/gdb mpiexec > ... > (gdb) run -np 1 java InitFinalizeMain > Starting program: /usr/local/openmpi-1.9_64_cc/bin/mpiexec > -np 1 java InitFinalizeMain > [Thread debugging using libthread_db enabled] > [New Thread 1 (LWP 1)] > [New LWP 2 ] > select: Interrupted system call > # > # A fatal error has been detected by the Java Runtime Environment: > # > # SIGSEGV (0xb) at pc=0xffffffff7ea3c7f0, pid=12461, tid=2 > ... > > > Unfortunately I wasn't able to set any breakpoints in my Java > program, so that I couldn't use gdb to get more information. > Therefore I modified my program in the following way to get an > idea where the "Interrupted system call" happened. > > tyr java 112 cat InitFinalizeMain.java > import mpi.*; > public class InitFinalizeMain > { > public static void main (String args[]) throws MPIException > { > System.out.println ("Before MPI.Init()"); > MPI.Init (args); > System.out.println ("After MPI.Init()"); > System.out.print ("Hello!\n"); > MPI.Finalize (); > } > } > tyr java 113 > > > > > tyr java 116 /usr/local/gdb-7.6.1_64_gcc/bin/gdb mpiexec > GNU gdb (GDB) 7.6.1 > ... > (gdb) run -np 1 java InitFinalizeMain > Starting program: /usr/local/openmpi-1.9_64_cc/bin/mpiexec > -np 1 java InitFinalizeMain > [Thread debugging using libthread_db enabled] > [New Thread 1 (LWP 1)] > [New LWP 2 ] > select: Interrupted system call > Before MPI.Init() > # > # A fatal error has been detected by the Java Runtime Environment: > # > # SIGSEGV (0xb) at pc=0xffffffff7ea3c7f0, pid=12578, tid=2 > ... > > > It seems that "Interrupted system call" happens before I call > the first MPI function, i.e., in "mpiexec" (?). If that's true, > then the "SIGSEGV" may happen, because my Java program hasn't > been started correctly. Do you agree? How do you debug a Java > program using MPI with gdb? I would be grateful, if somebody > can tell me how I must start/prepare the program so that I can > use "list" to see the source code of my class file and to set > proper breakpoints. > > I also tried my program with our former Java version which I > used for all test programs which I ported from C to Java. > Unfortunately I got the same error. > > > tyr java 118 /usr/local/gdb-7.6.1_64_gcc/bin/gdb mpiexec > ... > (gdb) run -np 1 java InitFinalizeMain > Starting program: /usr/local/openmpi-1.9.0_64_cc/bin/mpiexec > -np 1 java InitFinalizeMain > [Thread debugging using libthread_db enabled] > [New Thread 1 (LWP 1)] > [New LWP 2 ] > Before MPI.Init() > # > # A fatal error has been detected by the Java Runtime Environment: > # > # SIGSEGV (0xb) at pc=0xffffffff7e93c7f0, pid=2351, tid=2 > # > # JRE version: 7.0_07-b10 > ... > (gdb) run > The program being debugged has been started already. > Start it from the beginning? (y or n) y > > Starting program: /usr/local/openmpi-1.9.0_64_cc/bin/mpiexec > -np 1 java InitFinalizeMain > [Thread debugging using libthread_db enabled] > [New Thread 1 (LWP 1)] > [New LWP 2 ] > select: Interrupted system call > Before MPI.Init() > # > # A fatal error has been detected by the Java Runtime Environment: > # > # SIGSEGV (0xb) at pc=0xffffffff7e93c7f0, pid=2383, tid=2 > ... > > > The error "Interrupted system call" doesn't happen every time, > but "SIGSEGV" happens even with our older Java version, so that > these problems are probably unrelated after all. Are you still > interested to solve the problem or have you abandoned Solaris? > What can I do to help you, if you are still interested in > Solaris for at least openmpi-1.8.x? Thank you very much for any > help and any comments in advance. > > > Kind regards > > Siegmar > > _______________________________________________ > users mailing list > us...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users > Link to this post: > http://www.open-mpi.org/community/lists/users/2014/10/25463.php