Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 243820 - hsqldb-1.8.0.10 fails to emerge
Summary: hsqldb-1.8.0.10 fails to emerge
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Java (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Java team
URL: N/A
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-24 14:03 UTC by Robert Bradbury
Modified: 2008-12-14 17:50 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge --info output for emerge hsqldb failure (hsqldb.info,3.79 KB, text/plain)
2008-10-24 14:04 UTC, Robert Bradbury
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Robert Bradbury 2008-10-24 14:03:19 UTC
emerge dev-db/hsqldb-1.8.0.10 fails to emerge.

Error is "Unable to determine VM for building from dependencies".

Reproducible: Always

Steps to Reproduce:
1. emerge hsqldb

Actual Results:  
Fails.  Error:

 * Unable to determine VM for building from dependencies:
NV_DEPEND: java6? ( >=virtual/jdk-1.6 )
	!java6? ( || ( =virtual/jdk-1.5* =virtual/jdk-1.4* ) )
	test? ( dev-java/junit:0 )
	app-arch/unzip
	java-virtuals/servlet-api:2.3  >=dev-java/java-config-2.0.33-r1 >=sys-apps/portage-2.1.2.7 source
? ( app-arch/zip )  >=dev-java/ant-core-1.7.0
       
       >=sys-apps/portage-2.1.2.7
       >=dev-java/javatoolkit-0.3.0-r2
VNEED: 
 * 
 * ERROR: dev-db/hsqldb-1.8.0.10 failed.
 * Call stack:
 * ebuild.sh, line   49:  Called pkg_setup
 * hsqldb-1.8.0.10.ebuild, line   40:  Called java-pkg-2_pkg_setup
 * java-pkg-2.eclass, line   61:  Called java-pkg_init
 * java-utils-2.eclass, line 2098:  Called java-pkg_switch-vm
 * java-utils-2.eclass, line 2524:  Called die
 * The specific snippet of code:
 * die "Failed to determine VM for building."
 * The die message:
 * Failed to determine VM for building.


Expected Results:  
Should emerge properly.

Java installation is "standard".  JAVA_HOME=/etc/hava-config-2/current-system-vm
Other variables are undefined.
Comment 1 Robert Bradbury 2008-10-24 14:04:41 UTC
Created attachment 169718 [details]
emerge --info output for emerge hsqldb failure

As requested, the output of emerge --info.
Comment 2 Petteri Räty (RETIRED) gentoo-dev 2008-10-25 09:56:56 UTC
(In reply to comment #0)
> 
> Java installation is "standard". 
> JAVA_HOME=/etc/hava-config-2/current-system-vm
> Other variables are undefined.
> 

Why post it like this and not like asked?

!!! When you file a bug report, please include the following information:
GENTOO_VM=sun-jdk-1.5  CLASSPATH="" JAVA_HOME="/opt/sun-jdk-1.5.0.16"
JAVACFLAGS="-source 1.4 -target 1.4" COMPILER=""
and of course, the output of emerge --info
Comment 3 Petteri Räty (RETIRED) gentoo-dev 2008-10-25 09:59:11 UTC
please post the output of java-config -L
Comment 4 Robert Bradbury 2008-10-25 16:46:16 UTC
java-config -L
The following VMs are available for generation-2:
*)	Sun JDK 1.6.0.10 [sun-jdk-1.6]
Comment 5 Petteri Räty (RETIRED) gentoo-dev 2008-10-25 17:23:39 UTC
(In reply to comment #4)
> java-config -L
> The following VMs are available for generation-2:
> *)      Sun JDK 1.6.0.10 [sun-jdk-1.6]
> 

And do you have the java6 use flag on? AS you can see from the failure message if it's off then Portage will automatically pull in an older JDK unless you have done something to bypass this like using package.provided. Also test with emerge --deep -pv hsqldb.
Comment 6 Robert Bradbury 2008-10-25 18:46:06 UTC
Adding to the USE options in /etc/make.conf a "java6" keyword resolved the problem (hsqldb emerges properly).

As an aside, I would note that I did not even know there there was a "java6" USE option (never previously encountered in ~3 years of building gentoo packages). I would add, that I am not Java "literate", and only have it on my machine because there are programs, e.g. jalview, for genomic DNA sequences which appear to require it.  Gentoo developers may need to have a mechanism for making semi-literate developers aware of "enhancements" such as "java6" (and/or make the packages explicitly detail when it is missing).
Comment 7 Petteri Räty (RETIRED) gentoo-dev 2008-10-25 20:02:13 UTC
(In reply to comment #6)
> Adding to the USE options in /etc/make.conf a "java6" keyword resolved the
> problem (hsqldb emerges properly).
> 

You got it wrong. It works just fine without the java6 use flag and it pulls in a JDK earlier than 1.6. Something is different from most systems with your system as it's not pulling in the earlier version. On a stable machine without Java installed seems to work fine:
Calculating dependencies... done!
[ebuild  N    ] dev-db/hsqldb-1.8.0.10  USE="-doc -java6 -source -test" 3,437 kB
[ebuild  N    ]  app-arch/unzip-5.52-r2  1,114 kB
[ebuild  N    ]  java-virtuals/servlet-api-2.3  0 kB
[ebuild  N    ]   dev-java/tomcat-servlet-api-4.1.36  USE="-doc -source" 3,629 kB
[ebuild  N    ]    dev-java/ant-core-1.7.0-r1  USE="-doc -source" 6,683 kB
[ebuild  N    ]     dev-java/javatoolkit-0.3.0-r2  17 kB
[ebuild  N    ]      dev-python/pyxml-0.8.4-r1  USE="-doc -examples" 718 kB
[ebuild  N    ]  virtual/jdk-1.5.0  0 kB
[ebuild  N    ]  virtual/jre-1.6.0  0 kB
[ebuild  N    ]  dev-java/sun-jdk-1.5.0.16  USE="-X -alsa -doc -examples -jce (-nsplugin) -odbc" 43,020 kB
[ebuild  N    ]  virtual/jdk-1.6.0  0 kB
[ebuild  N    ]   dev-java/sun-jdk-1.6.0.07  USE="-X -alsa -doc -examples -jce (-nsplugin) -odbc" 70,023 kB
[ebuild  N    ]    dev-java/java-config-1.3.7  15 kB
[ebuild  N    ]    dev-java/java-config-2.1.6  40 kB
[ebuild  N    ]     dev-java/java-config-wrapper-0.15  7 kB
[ebuild  N    ]      app-portage/portage-utils-0.1.29  78 kB



Comment 8 Philip Webb 2008-10-26 11:38:39 UTC
I have the same problem, but adding 'java6' to  make.conf  doesn't solve it
(I've reverted to 'java', which is shown below).
I've tried compiling it several times, also after rebooting.
I tried unmerging  virtual/jdk-1.4.2 , but  hsqldb  wanted to remerge it;
I also have  virtual/jdk-1.6.0 .

My system is very reliable & I avoid "~testing" for system items.

The values requested for variables are ( 3  of them have no value):

  root:505 etc> echo $GENTOO_VM

  root:506 etc> echo $CLASSPATH
  .
  root:507 etc> echo $JAVA_HOME
  /etc/java-config-2/current-system-vm
  root:508 etc> echo $JAVACFLAGS

  root:509 etc> echo $COMPILER

Javaconfig gives

  root:522 etc> java-config -L
  The following VMs are available for generation-2:
  1)      Blackdown JDK 1.4.2.03 [blackdown-jdk-1.4.2]
  *)      Sun JDK 1.6.0.07 [sun-jdk-1.6]

'emerge --info' gives

  root:520 etc> emerge --info
  Portage 2.1.4.5 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25-gentoo-r4 x86_64)
  =================================================================
  System uname: 2.6.25-gentoo-r4 x86_64 Intel(R) Core(TM)2 Duo CPU E6750 @ 2.66GHz
  Timestamp of tree: Sat, 25 Oct 2008 10:15:01 +0000
  app-shells/bash:     3.2_p33
  dev-java/java-config: 1.3.7, 2.1.6
  dev-lang/python:     2.4.4-r13, 2.5.2-r7
  dev-python/pycrypto: 2.0.1-r6
  dev-util/cmake:      2.4.6-r1
  sys-apps/baselayout: 1.12.11.1
  sys-apps/sandbox:    1.2.18.1-r2
  sys-devel/autoconf:  2.13, 2.61-r2
  sys-devel/automake:  1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
  sys-devel/binutils:  2.18-r3
  sys-devel/gcc-config: 1.4.0-r4
  sys-devel/libtool:   1.5.26
  virtual/os-headers:  2.6.23-r3
  ACCEPT_KEYWORDS="amd64"
  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/config /var/lib/hsqldb"
  CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
  CXXFLAGS="-O2 -march=nocona -pipe"
  DISTDIR="/usr/portage/distfiles"
  EMERGE_DEFAULT_OPTS="--alphabetical"
  FEATURES="distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch userpriv"
  GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://osmirrors.cerias.purdue.edu/pub/gentoo/ http://lug.mtu.edu/gentoo/ http://open-systems.ufl.edu/mirrors/gentoo http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/"
  LANG="en_US.UTF-8"
  MAKEOPTS="-j3"
  PKGDIR="/usr/portage/packages"
  PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
  PORTAGE_TMPDIR="/z/tmp"
  PORTDIR="/usr/portage"
  PORTDIR_OVERLAY="/usr/local/portage"
  SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
  USE="X amd64 apm bitmap-fonts bonobo bzip2 cdr crypt cups dbus dri foomaticdb gcj gdbm gif gnutls gpm gtk gtk2 hal imagemagick imlib java javascript jpeg kde lcms libwww lm_sensors mime motif mpeg ncurses nptl nptlonly nsplugin nvidia opengl pcre pdf perl plotutils png pop python qt3 readline scanner session slang ssl threads tiff tk truetype truetype-fonts type1-fonts unicode usb 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 mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" 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 vesa"
  Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 9 Petteri Räty (RETIRED) gentoo-dev 2008-10-26 11:51:00 UTC
(In reply to comment #8)
> 
> The values requested for variables are ( 3  of them have no value):
> 
>   root:505 etc> echo $GENTOO_VM
> 
>   root:506 etc> echo $CLASSPATH
>   .
>   root:507 etc> echo $JAVA_HOME
>   /etc/java-config-2/current-system-vm
>   root:508 etc> echo $JAVACFLAGS
> 
>   root:509 etc> echo $COMPILER
> 

When posted from outside the ebuild environment the values of those variables aren't useful.

> Javaconfig gives
> 
>   root:522 etc> java-config -L
>   The following VMs are available for generation-2:
>   1)      Blackdown JDK 1.4.2.03 [blackdown-jdk-1.4.2]
>   *)      Sun JDK 1.6.0.07 [sun-jdk-1.6]
> 

I don't see why it would fail with the same message if you have a 1.4 JDK installed. I was talking with one of the Portage developers yesterday and he said that the stable Portage could have some virtual related weirdness but the original reporter was using ~arch any way.
Comment 10 Philip Webb 2008-10-26 12:47:23 UTC
>> The values requested for variables are ( 3  of them have no value):
-- snipped -- 
> When posted from outside the ebuild environment
> the values of those variables aren't useful.

I'll be happy to post them, if you can tell me how to obtain them (smile).

>>   root:522 etc> java-config -L
>>   The following VMs are available for generation-2:
>>   1)      Blackdown JDK 1.4.2.03 [blackdown-jdk-1.4.2]
>>   *)      Sun JDK 1.6.0.07 [sun-jdk-1.6]
> I don't see why it would fail with the same message
> if you have a 1.4 JDK installed.
> I was talking with one of the Portage developers yesterday and he said
> that the stable Portage could have some virtual related weirdness
> but the original reporter was using ~arch any way.

I use ~arch very selectively for some user apps (eg Eix),
but not universally & certainly not for system items.
As you know, I'm using Portage 2.1.4.5 , which is shown as stable.

Thanks for your very prompt response.  I look forward to further light.
Comment 11 Philip Webb 2008-10-27 08:31:48 UTC
Should not the status & resolution be changed ?
The OP seems to have solved the problem on his machine,
but I haven't on mine & look forward to further info requests or advice.
Comment 12 Philip Webb 2008-12-14 08:04:19 UTC
I've solved my problem, so in case anyone else runs into it, here's how.

The error msg referred to 'servlet-api-2.3', which was installed.
However, when I tried to remerge it, it called in
'tomcat-servlet-api-4.1.3.6', which was not installed (not that slot).
After (re)merging both, I was able to emerge 'hsqldb-1.8.0.10'.

This version of 'hsqldb' also requires either 'jdk-1.5.0' or 'USE="java6"':
I chose the latter & have made a note in my list of installed pkgs
to warn me next time (yes, I know that's not the approved way,
but that's how I've been managing my Gentoo pkgs since 2003 ... ).

Gentoo is all about learning by experience, so chalk up another (smile).
Comment 13 Petteri Räty (RETIRED) gentoo-dev 2008-12-14 17:50:12 UTC
(In reply to comment #12)
> I've solved my problem, so in case anyone else runs into it, here's how.
> 
> The error msg referred to 'servlet-api-2.3', which was installed.
> However, when I tried to remerge it, it called in
> 'tomcat-servlet-api-4.1.3.6', which was not installed (not that slot).
> After (re)merging both, I was able to emerge 'hsqldb-1.8.0.10'.
> 

I recommend using --deep to fix problems deeper in the dependency tree.

> This version of 'hsqldb' also requires either 'jdk-1.5.0' or 'USE="java6"':
> I chose the latter & have made a note in my list of installed pkgs
> to warn me next time (yes, I know that's not the approved way,
> but that's how I've been managing my Gentoo pkgs since 2003 ... ).
> 

It does not:
 * hsqldb_1_8_0_10.zip RMD160 SHA1 SHA256 size ;-) ...                                                                                                                                                                                [ ok ] 
 * checking hsqldb_1_8_0_10.zip ;-) ...                                                                                                                                                                                               [ ok ] 
 * Using: sun-jdk-1.4                                                                                                                                                                                                                        
>>> Unpacking source...    

<snip>

>>> Source compiled.
>>> Test phase [not enabled]: dev-db/hsqldb-1.8.0.10

>>> Install hsqldb-1.8.0.10 into /var/tmp/portage/dev-db/hsqldb-1.8.0.10/image/ category dev-db
>>> Completed installing hsqldb-1.8.0.10 into /var/tmp/portage/dev-db/hsqldb-1.8.0.10/image/