It seems there is a problem with using Java in the build process. Reproducible: Always Steps to Reproduce: 1.emerge yacas 2. 3. Actual Results: make[1]: Leaving directory `/var/tmp/portage/sci-mathematics/yacas-1.2.2/work/yacas-1.2.2' g++ dumpversion.cpp -o dumpversion javac net/sf/yacas/GraphicsPrimitives.java * Home for VM 'sun-jdk-1.6' does not exist: ../../usr/lib/jvm/sun-jdk-1.6 * Invalid System VM: sun-jdk-1.6 make: *** [net/sf/yacas/GraphicsPrimitives.class] Error 1 # emerge --info Portage 2.1.4.5 (default/linux/amd64/2008.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.25-gentoo-r7 x86_64) ================================================================= System uname: 2.6.25-gentoo-r7 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ Timestamp of tree: Sat, 08 Nov 2008 19:07:01 +0000 app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 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.5, 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="-march=k8 -O2 -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/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 /etc/udev/rules.d" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://mirror.switch.ch/mirror/gentoo/ http://ftp.cs.pu.edu.tw/Linux/Gentoo/ http://mirror.cambrium.nl/pub/os/linux/gentoo/" LANG="C" LDFLAGS="-Wl,-O1" MAKEOPTS="-j2" 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="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/science /usr/portage/local/layman/voip /usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi aim alsa amd64 apache2 apm arts audiofile bash-completion bcmath berkdb bidi blas bluetooth bzip2 cairo cdparanoia cdr cli cracklib crypt cups curl curlwrappers cxx dbus dga directfb doc dri dts dvb dvd dvdr dvdread eds emacs encode esd evo examples exif fam fastcgi fbcon ffmpeg fftw firefox flac fortran ftp gd gdbm ggi gif gimp ginac glut gnome gnutls gphoto2 gpm gstreamer gtk hal iconv icq idn ieee1394 imagemagick imap ipv6 isdnlog jabber java javascript jikes jpeg jpeg2k kde kdrive lapack lcms ldap leim libedit libnotify libwww lirc lm_sensors mad madwifi matroska midi mikmod mime mmx mng mnogosearch mono mp3 mpeg mpi msn mudflap mule multilib mysql mysqli nas ncurses nls nptl nptlonly nsplugin nvidia ogg ole openal opengl openmp osc oscar oss pam pcre pdf perl php plotutils png pppd python qt3 qt3support qt4 quicktime radius readline reflection samba scanner seamonkey server session sockets socks5 spell spl sqlite sse sse2 ssl startup-notification svg symlink sysfs szip tcpd tetex theora threads tidy tiff tokenizer truetype unicode usb v4l v4l2 vcd vhosts vorbis wifi wxwindows xc xcomposite xface xine xml xmlrpc xorg xosd xulrunner xvid yahoo zlib zrtp" ALSA_CARDS="hda-intel" 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" LIRC_DEVICES="imon" USERLAND="GNU" VIDEO_CARDS="nvidia vesa fbdev" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
It looks like your java sdk is not properly selected; please show output from command 'java-config -L'
# java-config -L The following VMs are available for generation-2: 1) Sun JDK 1.5.0.16 [sun-jdk-1.5] *) Sun JDK 1.6.0.07 [sun-jdk-1.6]
Does /usr/lib/jvm/sun-jdk-1.6 actually exist? It should be a symlink to your 1.6 JDK directory under /opt
Java and the links seem to be fine. Yacas is currently the only program that does not install. # ls -l /usr/lib/jvm total 0 lrwxrwxrwx 1 root root 21 Oct 24 00:50 sun-jdk-1.5 -> /opt/sun-jdk-1.5.0.16 lrwxrwxrwx 1 root root 21 Nov 8 21:29 sun-jdk-1.6 -> /opt/sun-jdk-1.6.0.07
Everything compiles fine here with Sun JDK 1.6.0.10. There's probably something wrong with your java setup since the error you get stems from javac aka run-java-tool. I've cc'd the java folks who hopefully can give us some helpful hints as to what the problem might be. Thanks, Markus
The ebuild uses a wrong eclass. The 'java' eclass is long deprecated relict of the past (before I joined at least :) and was used only for jdk and jre packages, not normal packages (yeah its misleading name sucks but we can't do anything about it now). We didn't really expected anyone to use it by mistake so there seem to be no deprecation warnings and we don't check its usage in our gen2 migration status scripts... should update them now :) It should use java-pkg-opt-2 eclass instead, install the jar using java-pkg_dojar and use java-pkg_dolauncher for the jyacas launcher. I could look into it but not right now.
(In reply to comment #6) > The ebuild uses a wrong eclass. The 'java' eclass is long deprecated relict of > the past (before I joined at least :) and was used only for jdk and jre > packages, not normal packages (yeah its misleading name sucks but we can't do > anything about it now). We didn't really expected anyone to use it by mistake > so there seem to be no deprecation warnings and we don't check its usage in our > gen2 migration status scripts... should update them now :) > > It should use java-pkg-opt-2 eclass instead, install the jar using > java-pkg_dojar and use java-pkg_dolauncher for the jyacas launcher. I could > look into it but not right now. > Thanks much for looking into this! Any help would be appreciated but I'll try to look into it later myself if I find some time. Thanks, Markus
Created attachment 171369 [details, diff] patch for the ebuild The ebuild also has incorrect dependencies for jdk and jre. Also makefile.yacas doesn't respect CXX not JAVACFLAGS. The patch for makefile issues will follow.
Created attachment 171371 [details, diff] Patch to fix makefile issues
Thanks a lot for your fixes Serkan. I applied them in cvs. PS: we don't need to redefine CXX in makefiles
I posted makefile patch to upstream issue tracker. Here's the link to it: https://sourceforge.net/tracker2/?func=detail&aid=2260269&group_id=2528&atid=102528