[oe] Weird build problem with classpath-native/java-initial

Steffen Sledz sledz at dresearch-fe.de
Thu Sep 20 06:39:15 UTC 2012


We hit a weird build problem after upgrading from openSUSE 12.1 to 12.2.

We're building oe-classic (2011.03-maintenance). But the problem may be relevant for oe-core/meta-java too.

The first observation was that the do_configure step of classpath-native did not finish.

-------------> bitbake output <----------------
...
NOTE: Running task 7 of 18 (ID: 12, /home/sledz/work/openembedded/recipes/classpath/classpath-native_0.98.bb, do_configure)
NOTE: package classpath-native-0.98-r4: task do_configure: Started
(no more output here)
---------------------------------------------------------------------------------------------

Some investigations later we learned that configure calls a self built java-initial script. This script seams to have a problem.

-------------> config.log <---------------
configure:23774: checking if /home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial works
configure:23805: CLASSPATH=.: /home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial  Test
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9173 Segmentation fault      jamvm-initial ${1+"$@"}
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9178 Segmentation fault      jamvm-initial ${1+"$@"}
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9183 Segmentation fault      jamvm-initial ${1+"$@"}
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9188 Segmentation fault      jamvm-initial ${1+"$@"}
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9193 Segmentation fault      jamvm-initial ${1+"$@"}
/home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial: line 14:  9198 Segmentation fault      jamvm-initial ${1+"$@"}
...
---------------------------------------------------------------------------------------------

A short look into this script shows the cause for the endless loop.

-------------> /home/sledz/work/HydraIP/OE/tmp.6/sysroots/i686-linux/usr/bin/java-initial  <---------------
#!/bin/sh
#
# Wrapper which (almost) silently restarts the VM in case of segfaults.

redo_from_start=1;
while [ $redo_from_start -eq 1 ]; do
    echo "Running JamVM-initial: ${@}"
    redo_from_start=0;
    jamvm-initial ${1+"$@"}
    if [ $? -eq 139 ]; then
        echo "JamVM-initial crashed - silently trying again"
        redo_from_start=1;
    fi
done
---------------------------------------------------------------------------------------------

I see two problems:

* First the script should not use an endless loop.
* Second the segfault should be fixed.

Any specialists with suggestions handling this?

Regards,
Steffen

BTW: I'm absolutely not a Java specialist.

-- 
DResearch Fahrzeugelektronik GmbH
Otto-Schmirgal-Str. 3, 10319 Berlin, Germany
Tel: +49 30 515932-237 mailto:sledz at dresearch-fe.de
Fax: +49 30 515932-299
Geschäftsführer: Dr. Michael Weber, Werner Mögle;
Amtsgericht Berlin Charlottenburg; HRB 130120 B;
Ust.-IDNr. DE273952058




More information about the Openembedded-devel mailing list