Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 464096 - app-eselect/eselect-java - Home for VM 'icedtea-bin-6' does not exist: /usr/lib/jvm/icedtea-bin-6 -/ /- * Invalid System VM: icedtea-bin-6
Summary: app-eselect/eselect-java - Home for VM 'icedtea-bin-6' does not exist: /usr/l...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Java (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Java team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-04-01 16:21 UTC by dio
Modified: 2015-04-11 14:00 UTC (History)
0 users

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


Attachments
emerge --info (emerge.info,5.31 KB, text/plain)
2013-04-01 16:21 UTC, dio
Details
Environment (environment,291.62 KB, application/octet-stream)
2013-04-01 16:28 UTC, dio
Details
Build log (via text editor) (file_464096.txt,60.49 KB, text/plain)
2013-04-01 17:00 UTC, dio
Details

Note You need to log in before you can comment on or make changes to this bug.
Description dio 2013-04-01 16:21:53 UTC
Created attachment 343960 [details]
emerge --info

Several ebuilds based on java fail to emerge due to the same problem:

* Home for VM 'icedtea-bin-6' does not exist: /usr/lib/jvm/icedtea-bin-6
* Invalid System VM: icedtea-bin-6
 * ERROR: dev-libs/protobuf-2.4.0a failed (compile phase):
 *   ejavac failed
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_compile
 *   environment, line 7683:  Called ejavac '-d' '../../../build' './com/google/protobuf/TextFormat.java' './com/google/protobuf/Service.java' './com/google/protobuf/BlockingRpcChannel.java' './com/google/protobuf/CodedOutputStream.java' './com/google/protobuf/Descriptors.java' './com/google/protobuf/RpcChannel.java' './com/google/protobuf/LazyStringArrayList.java' './com/google/protobuf/Internal.java' './com/google/protobuf/GeneratedMessageLite.java' './com/google/protobuf/UninitializedMessageException.java' './com/google/protobuf/ServiceException.java' './com/google/protobuf/RpcCallback.java' './com/google/protobuf/MessageLiteOrBuilder.java' './com/google/protobuf/FieldSet.java' './com/google/protobuf/ExtensionRegistry.java' './com/google/protobuf/InvalidProtocolBufferException.java' './com/google/protobuf/DynamicMessage.java' './com/google/protobuf/ExtensionRegistryLite.java' './com/google/protobuf/SmallSortedMap.java' './com/google/protobuf/GeneratedMessage.java' './com/google/protobuf/UnknownFieldSet.java' './com/google/protobuf/Message.java' './com/google/protobuf/MessageLite.java' './com/google/protobuf/BlockingService.java' './com/google/protobuf/ByteString.java' './com/google/protobuf/RepeatedFieldBuilder.java' './com/google/protobuf/ProtocolMessageEnum.java' './com/google/protobuf/AbstractMessage.java' './com/google/protobuf/RpcController.java' './com/google/protobuf/UnmodifiableLazyStringList.java' './com/google/protobuf/WireFormat.java' './com/google/protobuf/SingleFieldBuilder.java' './com/google/protobuf/RpcUtil.java' './com/google/protobuf/CodedInputStream.java' './com/google/protobuf/AbstractMessageLite.java' './com/google/protobuf/LazyStringList.java' './com/google/protobuf/MessageOrBuilder.java' './com/google/protobuf/DescriptorProtos.java'
 *   environment, line 2072:  Called die
 * The specific snippet of code:
 *       ${compiler_executable} ${javac_args} "${@}" || die "ejavac failed"


HOWEVER:

# eselect java-vm list
Available Java Virtual Machines:
  [1]   icedtea-bin-6  system-vm

# ls -ld /usr/lib/jvm/icedtea-bin-6
lrwxrwxrwx 1 root root 25 Apr  1 17:46 /usr/lib/jvm/icedtea-bin-6 -> /opt/icedtea-bin-6.1.12.4

# ls -ld /opt/icedtea-bin-6.1.12.4/
drwxr-xr-x 7 root root 4096 Apr  1 17:46 /opt/icedtea-bin-6.1.12.4/

Related shell variables:
GENTOO_VM=  
CLASSPATH="" 
JAVA_HOME=""
JAVACFLAGS="" 
COMPILER="javac"

I am adding the relevant output for dev-libs/protobuf-2.4.0a failing for ejavac as attachments:
• emerge --info
• build.log
• environment
Comment 1 dio 2013-04-01 16:28:41 UTC
Created attachment 343962 [details]
Environment
Comment 2 dio 2013-04-01 16:35:20 UTC
I was unable to add the build log.  It was neither accepted by "attach a file" nor could I paste the selection into "Add as text"
Comment 3 dio 2013-04-01 16:39:01 UTC
I set importance to high / critical because not being able to compile java make a lot of applications unavailable on my system.
Comment 4 dio 2013-04-01 17:00:52 UTC
Created attachment 343970 [details]
Build log (via text editor)
Comment 5 Ralph Sennhauser (RETIRED) gentoo-dev 2013-04-02 08:46:12 UTC
going by the build.log the ebuild isn't calling pkg_setup from the java eclass, as a result no jdk is setup. Though this would be an issue local to this ebuild.

As I read you, you see this with other packages as well, could you please list those you tried and failed.
Comment 6 Rafał Mużyło 2013-04-02 08:47:19 UTC
* Home for VM 'icedtea-bin-6' does not exist: /usr/lib/jvm/icedtea-bin-6
* Invalid System VM: icedtea-bin-6

Looks like it's either a messed up environment or eselect isn't giving the correct output.

What does 'java-config -L' print ?
Comment 7 Ralph Sennhauser (RETIRED) gentoo-dev 2013-04-09 10:56:26 UTC
Closing as this is the only reported package at this time, if you hit others please file a new bug. Thanks for the report and radhermit for the quick fix.

  02 Apr 2013; Tim Harder <radhermit@gentoo.org> protobuf-2.4.0a.ebuild,
  protobuf-2.4.1.ebuild:
  Run java-pkg-opt-2_pkg_setup when the java use flag is enabled.
Comment 8 dio 2013-05-05 15:22:26 UTC
After the last emerge, I run into exactly the same problem as before — however, the solution has vanished:

# java-pkg-opt-2_pkg_setup
bash: java-pkg-opt-2_pkg_setup: command not found
# locate java-pkg-opt-2_pkg_setup
# 

This time, the package is gettext (I remember, gettext was one of the packages that had had the problem before).
Comment 9 dio 2013-05-05 16:20:37 UTC
I removed the symlink (/usr/lib/jvm/icedtea-bin-6) to the target directory (/opt/icedtea-bin-6.1.12.4), then I moved the target directory directly to /usr/lib/jvm/icedtea-bin-6.

Now the VM is correctly recognized.

So the whole problem is actually a symlink problem: if the directory is checked without the trailing backslash, its type is 'symlink' rather than 'directory'.