I do not have any JDK installed on my new box. When installing sun-jdk-1.6.0.02 it fails with the following output: <snip> >>> Source unpacked. >>> Test phase [not enabled]: dev-java/sun-jdk-1.6.0.02 >>> Install sun-jdk-1.6.0.02 into /var/tmp/portage/sun-jdk-1.6.0.02/image/ category dev-java [32;01m*[0m Fallback PaX marking -m [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/appletviewer [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/apt [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/extcheck [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/idlj [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jar [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jarsigner [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/java [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javac [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javadoc [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javah [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javap [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javaws [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jconsole [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jdb [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jhat [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jinfo [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jmap [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jps [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jrunscript [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jsadebugd [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstack [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstat [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstatd [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/keytool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/native2ascii [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/orbd [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/pack200 [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/policytool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmic [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmid [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmiregistry [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/schemagen [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/serialver [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/servertool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/tnameserv [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/unpack200 [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/wsgen [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/wsimport [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/xjc [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/java [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/java_vm [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/javaws [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/keytool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/orbd [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/pack200 [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/policytool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/rmid [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/rmiregistry [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/servertool [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/tnameserv [32;01m*[0m /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/unpack200 TYPE PAX FILE ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/appletviewer ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/apt ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/extcheck ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/idlj ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jar ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jarsigner ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/java ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javac ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javadoc ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javah ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javap ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/javaws ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jconsole ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jdb ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jhat ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jinfo ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jmap ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jps ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jrunscript ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jsadebugd ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstack ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstat ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/jstatd ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/keytool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/native2ascii ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/orbd ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/pack200 ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/policytool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmic ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmid ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/rmiregistry ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/schemagen ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/serialver ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/servertool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/tnameserv ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/unpack200 ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/wsgen ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/wsimport ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/bin/xjc ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/java ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/java_vm ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/javaws ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/keytool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/orbd ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/pack200 ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/policytool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/rmid ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/rmiregistry ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/servertool ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/tnameserv ET_EXEC PemRxS /var/tmp/portage/sun-jdk-1.6.0.02/work/jdk1.6.0_02/jre/bin/unpack200 [33;01m*[0m Disabling generation-1 compatibility... ln: creating symbolic link `/var/tmp/portage/sun-jdk-1.6.0.02/image//usr/lib/jvm/sun-jdk-1.6' to `/opt/sun-jdk-1.6.0.02': No such file or directory !!! ERROR: dev-java/sun-jdk-1.6.0.02 failed. !!! Function set_java_env, Line 195, Exitcode 1 !!! Failed to make VM symlink at /usr/lib/jvm/sun-jdk-1.6 !!! If you need support, post the topmost build error, NOT this status message. </snip> Might this be connected to my FEATURES="sandbox"? The directory /opt/sun-jdk-1.6.0.02 DOES NOT exist. Creating it in advance does not help. <snip> emerge --info Gentoo Base System version 1.6.14 Portage 2.0.54 (default-linux/x86/vserver, gcc-3.4.5, glibc-2.5-r4, 2.6.18-028stab039 i686) ================================================================= System uname: 2.6.18-028stab039 i686 Dual Core AMD Opteron(tm) Processor 270 app-admin/eselect-compiler: [Not Present] app-shells/bash: 3.0-r12 dev-java/java-config: 1.3.7, 2.0.33-r1 dev-lang/python: 2.4.2 dev-python/pycrypto: [Not Present] dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/baselayout: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.16 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.21 ACCEPT_KEYWORDS="x86" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=opteron -O2 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/www/localhost/cgi-bin /var/www/localhost/htdocs /var/www/toe.ch/htdocs" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/env.d" CXXFLAGS="-march=opteron -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache collision-protect distlocks sandbox sfperms strict userpriv" GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://ftp.ndlug.nd.edu/pub/gentoo/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 acpi adns apache2 avi bash-completion berkdb bzip2 crypt cups directfb fbcon gd gdbm gif gpm imagemagick imap ipv6 java jpeg libwww maildir mbox mmx mpeg mysql ncurses nls nptl nptlonly pam pdflib pear perl php png python readline samba sasl slang socks5 sse ssl tiff usb vhosts xml xml2 zlib" Unset: CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTAGE_RSYNC_OPTS </snip>
The link target does not have to exist upon link creation. I think it's telling you that '/var/tmp/portage/sun-jdk-1.6.0.02/image//usr/lib/jvm/' does not exist. But I don't see why.
Hm there's a 'dosym' command which AFAIK should create the directories needed to contain the link, so should not really fail. Just noticed your "Portage 2.0.54" - that's too old for java stuff. There's even explicit DEPEND on >=portage-2.1 so it's pretty weird it lets you emerge sun-jdk with this version.
Hmm right, just as I though, the DEPEND restriction to >=2.1 for VM's was added just because of this problem - https://forums.gentoo.org/viewtopic.php?p=3415514 Maybe dosym is broken in this portage version, dunno. Well it's not in the tree anymore so guess nobody will fix it. Except if it happens with 2.0.51.22-r3 which is the only 2.0* in tree. 2.1 is fine
The funny thing is that I am doing an `emerge -u portage` which wants to update my Java because of dependencies (sys-libs/db).. Let me try updating portage without the Java dep and then try to install Java.
(In reply to comment #2) > Hm there's a 'dosym' command which AFAIK should create the directories needed > to contain the link, so should not really fail. Only with newer Portage versions. > Just noticed your "Portage 2.0.54" - that's too old for java stuff. There's > even explicit DEPEND on >=portage-2.1 so it's pretty weird it lets you emerge > sun-jdk with this version. > Maybe 2.0.54 does not handle deps from eclasses properly? aria dev-java # qdepends -d dev-java/sun-jdk-1.6.0.02 dev-java/sun-jdk-1.6.0.02: =dev-java/java-config-2.0* >=sys-apps/portage-2.1
To me it seems that emerge -u does not check that required deps are satisfied.
The merge worked with the newest portage.
(In reply to comment #6) > To me it seems that emerge -u does not check that required deps are satisfied. Could be an attempt to break out of circular deps. Maybe we could add a dodir before the dosym just in case, although not systematic solution. Would probably move the problem to sys-libs/db which depends on 2.1.x (or what we have now for proper env handling :) via eclass.
(In reply to comment #8) > (In reply to comment #6) > > To me it seems that emerge -u does not check that required deps are satisfied. > > Could be an attempt to break out of circular deps. Could be. You need at least portage-2.1.2 to guarantee that all deps are satisfied.
seems to be fixed, up to that not in tree anymore