Raspbian Nightly

Hey,
i know that nightlies wont get support, but i don’t think, that i’m alone plus google won’t find anything 'bout
Perhaps there’s an easy fix or i’m plain stupid :o

liblistSerialsj.so
i’ve downloaded the Linux ARM (April-26 18:13) unpacked it and ran it via “./arduino”
ArduinoIDE crashed with:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0xaa8b7d58, pid=1533, tid=3055461472
#
# JRE version: Java(TM) SE Runtime Environment (8.0-b132) (build 1.8.0-b132)
# Java VM: Java HotSpot(TM) Client VM (25.0-b70 mixed mode linux-arm )
# Problematic frame:
# C  [liblistSerialsj.so+0x1d58]  frame_dummy+0xb
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# An error report file with more information is saved as:
# /home/pi/Downloads/arduino-nightly/hs_err_pid1533.log

and leaves an Crashlog in /arduino-nightly

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0xaab05d58, pid=864, tid=3055182944
#
# JRE version: Java(TM) SE Runtime Environment (8.0-b132) (build 1.8.0-b132)
# Java VM: Java HotSpot(TM) Client VM (25.0-b70 mixed mode linux-arm )
# Problematic frame:
# C  [liblistSerialsj.so+0x1d58]  frame_dummy+0xb
#
# Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
#
# If you would like to submit a bug report, please visit:
#   http://bugreport.sun.com/bugreport/crash.jsp
# The crash happened outside the Java Virtual Machine in native code.
# See problematic frame for where to report the bug.
#

---------------  T H R E A D  ---------------

Current thread (0xb5406fe8):  JavaThread "main" [_thread_in_native, id=866, stack(0xb6157000,0xb61a7000)]

siginfo:si_signo=SIGILL: si_errno=0, si_code=1 (ILL_ILLOPC), si_addr=0xaab05d58

Registers:
  r0  = 0xaab221d4
  r1  = 0xbec618a4
  r2  = 0x00000000
  r3  = 0xaab222b8
  r4  = 0x00000001
  r5  = 0xaab221cc
  r6  = 0x00000005
  r7  = 0xbec618a4
  r8  = 0x013e3070
  r9  = 0x00000001
  r10 = 0x00000000
  fp  = 0xb61a4664
  r12 = 0xaab05d4d
  sp  = 0xb61a45b8
  lr  = 0xb6f9cffc
  pc  = 0xaab05d58
  cpsr = 0x00000030

Top of Stack: (sp=0xb61a45b8)
0xb61a45b8:   0001e1cc b6f9cffc 013e3070 00000000
0xb61a45c8:   00000001 aaa595b8 00000005 bec618a4
0xb61a45d8:   013e3070 b6f9d0d8 aaa595b8 b6fbd050
0xb61a45e8:   00000003 0000000c b6fbd568 00000194
0xb61a45f8:   aaa59714 b6fa1658 b61a4664 b6fa1920
0xb61a4608:   aaa595b8 00000000 abd9a5a0 b6990158
0xb61a4618:   b540aef0 00000393 b6987049 b61a4608
0xb61a4628:   00000004 b5405af8 00000001 80000001 

Instructions: (pc=0xaab05d58)
0xaab05d38:   0001c6b6 0001c59e 000000e0 0001c68e
0xaab05d48:   0001c696 b5084807 44784b07 447b6802
0xaab05d58:   e8bdb912 e7bb4008 589b4a04 d0f82b00
0xaab05d68:   e7f64798 0001c47e 0001c55e 000000f4 

Register to memory mapping:

  r0  = 0xaab221d4
0xaab221d4: <offset 0x1e1d4> in /home/pi/Downloads/arduino-nightly/lib/liblistSerialsj.so at 0xaab04000

  r1  = 0xbec618a4
0xbec618a4 is an unknown value

  r2  = 0x00000000
0x00000000 is an unknown value

  r3  = 0xaab222b8
0xaab222b8: <offset 0x1e2b8> in /home/pi/Downloads/arduino-nightly/lib/liblistSerialsj.so at 0xaab04000

  r4  = 0x00000001
0x00000001 is an unknown value

  r5  = 0xaab221cc
0xaab221cc: <offset 0x1e1cc> in /home/pi/Downloads/arduino-nightly/lib/liblistSerialsj.so at 0xaab04000

  r6  = 0x00000005
0x00000005 is an unknown value

  r7  = 0xbec618a4
0xbec618a4 is an unknown value

  r8  = 0x013e3070
0x013e3070 is an unknown value

  r9  = 0x00000001
0x00000001 is an unknown value

  r10 = 0x00000000
0x00000000 is an unknown value

  fp  = 0xb61a4664
0xb61a4664 is pointing into the stack for thread: 0xb5406fe8

  r12 = 0xaab05d4d
0xaab05d4d: <offset 0x1d4d> in /home/pi/Downloads/arduino-nightly/lib/liblistSerialsj.so at 0xaab04000

  sp  = 0xb61a45b8
0xb61a45b8 is pointing into the stack for thread: 0xb5406fe8

  lr  = 0xb6f9cffc
0xb6f9cffc: <offset 0xfffc> in /lib/ld-linux-armhf.so.3 at 0xb6f8d000

  pc  = 0xaab05d58
0xaab05d58: <offset 0x1d58> in /home/pi/Downloads/arduino-nightly/lib/liblistSerialsj.so at 0xaab04000



Stack: [0xb6157000,0xb61a7000],  sp=0xb61a45b8,  free space=309k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C  [liblistSerialsj.so+0x1d58]  frame_dummy+0xb

Noticed the same thing here.

Running on

RPi B+ Version 2

processor : 0
model name : ARMv6-compatible processor rev 7 (v6l)
BogoMIPS : 697.95
Features : half thumb fastmult vfp edsp java tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xb76
CPU revision : 7

Hardware : BCM2708
Revision : 0010
Serial : 00000000c96004f6
cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 8 (jessie)"
NAME="Raspbian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=raspbian
ID_LIKE=debian

The same here!
But I found out sth. interesting.

On my Pi 2 (ARMv7/32-bit) it works without that error and on the Pi Zero (ARMv6/32-bit) it doesn’t. And the error about liblistSerialsj.so appears. I have read in another forum (http://forum.odroid.com/viewtopic.php?t=21249&p=141285 and http://forum.arduino.cc/index.php?topic=400808.0), that it is probably linked to 32 and 64 bit… But both processors are 32 bit.

This error appears in the stable 1.6.9 release AND in the nightly, as said.

It might be connected to the ARM architecture (v6 vs. v7/ ARM11 vs. ARM Cortex-A)?!?

I found a dirty solution.
Probably libserials is compiled wrong:
go to: Arduino-IDE-for-Raspberry/binaries at master · NicoHood/Arduino-IDE-for-Raspberry · GitHub (an early working build for arm)
download liblistSerials-1.0.5
and copy arm/liblistSerialsj.so to your arduino*/lib folder
than it works on pi zero, A/B and Pi2 :slight_smile: