Bug 163801 - dev-java/kaffe-1.1.7-r4 failed to compile if no virtual/jre is installed (testing request for kaffe-1.1.7-r5)
|
Bug#:
163801
|
Product: Gentoo Linux
|
Version: 2006.1
|
Platform: All
|
|
OS/Version: Linux
|
Status: NEW
|
Severity: normal
|
Priority: P2
|
|
Resolution:
|
Assigned To: java@gentoo.org
|
Reported By: hkbst@gentoo.org
|
|
Component: Ebuilds
|
|
|
URL:
|
|
Summary: dev-java/kaffe-1.1.7-r4 failed to compile if no virtual/jre is installed (testing request for kaffe-1.1.7-r5)
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-01-25 19:17 0000
|
dev-java/kaffe-1.1.7-r4 failed to compile
Portage 2.1.2-r2 (default-linux/amd64/2006.1, gcc-4.1.1, glibc-2.5-r0,
2.6.18-gentoo-r1 x86_64)
=================================================================
System uname: 2.6.18-gentoo-r1 x86_64 Intel(R) Core(TM)2 CPU 6600 @
2.40GHz
Gentoo Base System version 1.12.9
Timestamp of tree: Thu, 25 Jan 2007 14:29:01 +0000
dev-java/java-config: 1.3.7, 2.0.31-r3
dev-lang/python: 2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox: 1.2.18.1
sys-devel/autoconf: 2.13, 2.61
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.19.2-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf
/etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig collision-protect cvs distlocks metadata-transfer
parallel-fetch sandbox sfperms splitdebug strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LINGUAS="en nl"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/marijn/overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac acpi alsa amd64 berkdb bitmap-fonts cli cracklib crypt cups dlloader
dri dts dvd dvdr dvdread fortran gdbm gif gpm gtk iconv ipv6 isdnlog jpeg kde
kdeenablefinal libg++ lm_sensors mad mng mp3 ncurses nls nptl nptlonly nvidia
offensive opengl pam pcre pdf perl png ppds pppd python readline reflection
session smp spl ssl svg tcpd theora truetype-fonts type1-fonts udev unicode
vorbis xinerama xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem
bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel
intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev"
KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001
mtxorb ncurses text" LINGUAS="en nl" USERLAND="GNU" VIDEO_CARDS="fbdev nv
nvidia"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS,
PORTAGE_RSYNC_EXTRA_OPTS
(In reply to comment #1)
> Created an attachment (id=108147) [edit] [details]
> kaffe emerge output
>
!!! ERROR: The active vm could not be found
!!! Could not find runtime classes
so my bet would be that kaffe fails in the case that no jdk is installed when
you try to emerge it
(In reply to comment #3)
> Confirmed
>
The solution is to give jikes-bin as the path to jikes in configure. I think
this bug probably applies to gnu-classpath, cacao, jamvm etc. too.
You should now be able to emerge kaffe without a jre already installed. Still
need to fix the other stuff before marking this as fixed.
Created an attachment (id=110251) [details]
kaffe-1.1.7-r4/temp/build.log
it gets farther but it still fails
Portage 2.1.2-r9 (default-linux/amd64/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0,
2.6.20-gentoo x86_64)
=================================================================
System uname: 2.6.20-gentoo x86_64 Intel(R) Core(TM)2 CPU 6600 @
2.40GHz
Gentoo Base System version 1.12.9
Timestamp of tree: Thu, 15 Feb 2007 10:00:01 +0000
dev-java/java-config: 1.3.7, 2.0.31-r3
dev-lang/python: 2.4.4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox: 1.2.18.1
sys-devel/autoconf: 2.13, 2.61
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.20
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf
/etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig collision-protect cvs distlocks metadata-transfer
parallel-fetch sandbox sfperms splitdebug strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org
http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US.UTF-8"
LINGUAS="en nl"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/home/marijn/overlay"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X aac acpi alsa amd64 berkdb bitmap-fonts cairo cdr cli cracklib crypt
cups dbus dlloader dri dts dvd dvdr dvdread eds emboss encode esd fam firefox
fortran gdbm gif gmp gnome gpm gstreamer gtk gtk2 hal iconv ipv6 isdnlog jpeg
kde kdeenablefinal ldap libg++ lm_sensors mad midi mikmod mng mp3 mpeg ncurses
nls nptl nptlonly nvidia offensive ogg opengl oss pam pcre pdf perl png ppds
pppd python qt3 qt4 quicktime readline reflection sdl session smp spell spl ssl
svg tcpd theora threads truetype truetype-fonts type1-fonts unicode vorbis
xinerama xml xorg xv zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem
bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel
intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev"
KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001
mtxorb ncurses text" LINGUAS="en nl" USERLAND="GNU" VIDEO_CARDS="fbdev nv
nvidia"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LDFLAGS,
PORTAGE_RSYNC_EXTRA_OPTS
Finally fixed in -r5. Leaving this open until ppc and amd64 get
app-arch/fastjar keyworded and can add their keywords back to kaffe.
(In reply to comment #7)
> Finally fixed in -r5. Leaving this open until ppc and amd64 get
> app-arch/fastjar keyworded and can add their keywords back to kaffe.
dev-java/kaffe-1.1.7-r5 USE="alsa gmp gtk -esd -nls" fails with
FEATURES="test" (89 of 150 tests failed).
The number of failed tests varies. All test/regression/*.fail files have the
following message:
"Internal error: caught an unexpected exception.
Please check your CLASSPATH and your installation.
java/lang/StackOverflowError
This error may occur because the stack size is not sufficient.
Try to increase the stack size using 'ulimit -s' or with the '-ss'
option on kaffe."
I tried raising the value via ulimit -s but portage doesn't seem to inherit
this from the parent shell. I also tried setting the max stack size on the
/etc/security/limits.conf and /etc/portage/bashrc files.
Portage 2.1.2.7 (default-linux/amd64/2007.0/desktop, gcc-4.1.2, glibc-2.5-r0,
2.6.20-gentoo-r8 x86_64)
=================================================================
System uname: 2.6.20-gentoo-r8 x86_64 Intel(R) Pentium(R) D CPU 3.00GHz
Gentoo Base System release 1.12.9
Timestamp of tree: Thu, 21 Jun 2007 20:20:01 +0000
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.32
dev-lang/python: 2.4.4-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: 2.4-r7
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.61
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.16.1-r3
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.17-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=nocona -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/init.d
/etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/
/etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo
/etc/texmf/web2c"
CXXFLAGS="-O2 -march=nocona -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="-akv"
FEATURES="buildpkg ccache collision-protect distlocks fixpackages
metadata-transfer multilib-strict parallel-fetch sandbox sfperms strict test
userfetch userpriv usersandbox"
GENTOO_MIRRORS="ftp://mirrors1.netvisao.pt/gentoo
http://darkstar.ist.utl.pt/pub/gentoo http://distfiles.gentoo.org
http://www.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="X acl acpi alsa amd64 apache2 arts bash-completion bitmap-fonts cairo cdr
cli cracklib crypt dbus dri dts dvd dvdr dvdread eds emboss encode evo fam
firefox flac fortran gif gpm hal iconv ipv6 isdnlog jpeg kde kdeenablefinal
kdehiddenvisibility libg++ mad midi mikmod mmx mp3 mpeg mudflap musepack
musicbrainz mysql ncurses nptl nptlonly offensive ogg opengl openmp pam pcre
pdf perl png postgres pppd python qt3 qt3support qt4 quicktime readline
reflection sdl session spell spl sse sse2 ssl svg tcpd test tiff truetype
truetype-fonts type1-fonts unicode vorbis xcomposite xml xorg xscreensaver xv
zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci
emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m
maestro3 trident usb-audio via82xx via82xx-modem ymfpci"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file
hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route
share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses
text" USERLAND="GNU" VIDEO_CARDS="i810"
Unset: CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS,
PORTDIR_OVERLAY
I suppose the problem is not ulimit but kaffe's own limit (overridable by -ss
as it says). I passed the tests on x86, so the limit is probably low for amd64.
What is shown by executing this? (after emerging with FEATURES=-test)
# /opt/kaffe-1.1.7/jre/bin/kaffe-bin -version
java full version "kaffe-1.4.2"
kaffe VM "1.1.7"
<snip/>
Engine: Just-in-time v3 Version: 1.1.7 Java Version: 1.4
Heap defaults: minimum size: 5 MB, maximum size: unlimited
Stack default size: 256 KB
So we could somehow make the tests run with larger -ss, tried looking but I
really don't know anything about autotools so I found nothing in Makefiles, no
idea how the tests are executed :)
But maybe if the amd64 default stack size is the same as on x86, it would be
better to increase the defaults directly in the code (IIRC Sun has also
different defaults for x86 and amd64).
# /opt/kaffe-1.1.7/jre/bin/kaffe-bin -version
java full version "kaffe-1.4.2"
kaffe VM "1.1.7"
[...]
Engine: Interpreter Version: 1.1.7 Java Version: 1.4
Heap defaults: minimum size: 5 MB, maximum size: unlimited
Stack default size: 64 KB
Created an attachment (id=122951) [details]
increase default stack size on amd64 to 512kb
64KB isn't really much :) This patch should increase it to 512KB which is
double the x86 defaults. Please test, hope you know how to apply it locally.
dev-java/kaffe-1.1.7-r5 USE="alsa gmp gtk -esd -nls" with FEATURES="-test" and
with the patch kaffe-1.1.7-amd64-stack-size.patch applied.
$ /opt/kaffe-1.1.7/jre/bin/kaffe-bin -version
java full version "kaffe-1.4.2"
kaffe VM "1.1.7"
[...]
Stack default size: 16352 KB
(In reply to comment #13)
> Stack default size: 16352 KB
Uh 16MB instead of 512KB, I wonder how it calculates that from the #define...
Are the tests passing now at least? :)
(In reply to comment #14)
> Uh 16MB instead of 512KB, I wonder how it calculates that from the #define...
>
> Are the tests passing now at least? :)
Sorry, but I was playing with different stack sizes and 16M was the last one.
Still, dev-java/kaffe-1.1.7-r5 fails with that patch when FEATURES="test" is
used.
With _your_ patch and FEATURES="-test":
$ /opt/kaffe-1.1.7/bin/kaffe -version
java full version "kaffe-1.4.2"
kaffe VM "1.1.7"
[...]
Stack default size: 512 KB
HTH.
(In reply to comment #14)
> (In reply to comment #13)
> > Stack default size: 16352 KB
>
> Uh 16MB instead of 512KB, I wonder how it calculates that from the #define...
>
> Are the tests passing now at least? :)
>
There should be no difference in test failures between -r4 and -r5 so please
add back your keyword and open a new bug for test failures.
Seems r6 has the same problem on ppc64:
emerge -pv kaffe
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild N ] sys-libs/libstdc++-v3-3.3.6 USE="nls nptl -build (-multilib)"
0 kB
[ebuild N F ] dev-java/java-sdk-docs-1.4.2 33,592 kB
[ebuild N ] virtual/libstdc++-3.3 0 kB
[ebuild N F ] dev-java/ibm-jdk-bin-1.4.2.9 USE="X alsa doc examples
-javacomm (-nsplugin)" 63,230 kB
[ebuild N ] dev-java/gjdoc-0.7.7-r1 USE="-source -xmldoclet" 0 kB
[ebuild N ] dev-java/kaffe-1.1.7-r6 USE="alsa gmp gtk nls -esd" 0 kB
(In reply to comment #17)
> Seems r6 has the same problem on ppc64:
>
> emerge -pv kaffe
>
Not really. Just Portage not being smart enough to notice that kaffe does
provide virtual/jdk at that point. I couldn't find the bug number where there
is more information about this.
Right, kaffe PDEPENDs on dev-java/gjdoc which DEPENDS on >=virtual/jdk-1.4.
previous comment only applies to kaffe-1.1.7-r6
(In reply to comment #23)
> I've adapted the fix from bug #141118 to work in cases when a virtual is
> not yet installed but it has been pulled into the graph.
This is included in portage-2.1.5_rc4.
(In reply to comment #7)
> Finally fixed in -r5. Leaving this open until ppc and amd64 get
> app-arch/fastjar keyworded and can add their keywords back to kaffe.
>
We have keywords on both, don't know the status of this bug..So, re-assigning
to java@g.o, add amd64@g.o back to CC if needed and state what is needed. (Or
better yet, open a new bug) Thanks.