when emerging kdejava i get some sed error: >> Emerging (1 of 1) kde-base/kdejava-3.5.2 to / >>> checking ebuild checksums ;-) >>> checking auxfile checksums ;-) >>> checking miscfile checksums ;-) >>> checking kdebindings-3.5.2.tar.bz2 ;-) >>> Unpacking source... >>> Unpacking parts of kdebindings-3.5.2.tar.bz2 to /var/tmp/portage/kdejava-3.5.2/work Symlinking library libqtjavasupport under /usr/kde/3.5/lib/ in source dir * Applying no-gtk-glib-check.diff ... [ ok ] * Applying kdejava-3.4.0_rc1-classpath.diff ... [ ok ] sed: -e expression #1, char 16: unknown option to `s' sed: -e expression #1, char 16: unknown option to `s' >>> Source unpacked. >>> Compiling source in /var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2 ... *** automake (GNU automake) 1.7.9 found. *** Creating acinclude.m4 after this erverything works fine, until this: /bin/sh ../../../libtool --silent --mode=link --tag=CXX i686-pc-linux-gnu-g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=$ ^[[Amake[4]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala/kdejava' make[4]: Entering directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/kde/3.5/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPPORT $ make[4]: *** No rule to make target `org/kde/koala/classnoinst.stamp', needed by `koala.jar'. Stop. make[4]: *** Waiting for unfinished jobs.... make[4]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2' make: *** [all] Error 2 !!! ERROR: kde-base/kdejava-3.5.2 failed. Call stack: ebuild.sh, line 1539: Called dyn_compile ebuild.sh, line 939: Called src_compile kdejava-3.5.2.ebuild, line 45: Called kde-meta_src_compile kde-meta.eclass, line 410: Called kde_src_compile kde.eclass, line 164: Called kde_src_compile 'all' kde.eclass, line 306: Called kde_src_compile 'myconf' 'configure' 'make' kde.eclass, line 302: Called die !!! died running emake, kde_src_compile:make !!! If you need support, post the topmost build error, and the call stack if relevant. after switching back to blackdown-1.4 everything works fine again(even no sed error at the beginning). here is my 'emerge --info': Portage 2.1-r1 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.6-r4, 2.6.16-gentoo-r6 i686) ================================================================= System uname: 2.6.16-gentoo-r6 i686 Intel(R) Pentium(R) M processor 1500MHz Gentoo Base System version 1.6.15 ccache version 2.3 [enabled] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.3 dev-util/confcache: [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-r2 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r2 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium-m -Os -pipe -fomit-frame-pointer -fno-ident -mfpmath=sse" CHOST="i686-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/splash /etc/terminfo" CXXFLAGS="-march=pentium-m -Os -pipe -fomit-frame-pointer -fno-ident -mfpmath=sse -fvisibility-inlines-hidden" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="en" MAKEOPTS="-j2" 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="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 7zip X aac acpi acpi4linux alsa amarok ansi apm arts avi bash-completion batch berkdb bitmap-fonts blender-game bluetooth bootspla bootsplash cairo ccache cli cracklib crypt css dga diet dio dlloader dri dvd eds emboss encode esd examples exscalibar fbcon fbsplash ffmpeg firefox foomaticdb gcj gdbm gif glibc glibc-omitfp glitz glut glx gpm gstreamer gtk gtk2 hal hpn i8x0 icc icc-pgo imlib input_devices_synaptics irc isdnlog java javascript jikes jpeg kde kdeenablefinal latex libg++ libsamplerate libwww lm_sensors mad madwifi mikmod mmx mmxext motif mozinterfaceinfo moznocompose moznoirc moznomail moznoxft mozp3p mozsvg mp3 mp4live mpeg mpeg2 mpeg4 mppe-mppc ncurses nls nocd noreiserfs nowin nptl nptlonly ntlm nvram offensive ogg openal opengl openssl oscar pam pcre pdf pdflib perl png pnp posix povray pppd python qt qt3 qt4 quicktime rar readline reflection sdl session sms spell spl sse sse2 ssl svg svga syslog tcpd threads truetype truetype-fonts type1 type1-fonts udev unicode usb vcd vfat video_cards_i810 videos vim vorbis wavelan wifi win32codecs wma wma123 xcomposite xine xml xorg xscreensaver xv zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_en userland_GNU" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS
This error happens also with sun-jdk 1.4.2.12 in x86.
Created attachment 91207 [details, diff] fix sed call
Created attachment 91233 [details, diff] kdejava-3.5.2-sed-fix.patch Idea from comment #2 is good, but, sed string from original ebuild was broken. Applying this patch to current ebuild (kdejava-3.5.2.ebuild) should solve the problem.
Created attachment 91235 [details] kdejava-3.5.2.ebuild Kdejava 3.5.2 (whole) ebuild corrected.
Created attachment 91259 [details] kdejava-3.5.2.ebuild I only changed the sed command from "s/regexp/regexp" to the proper "s/regexp/regexp/". It wouldn't work without this.
Still a problem with the 1.8 version of the ebuild: <snip>lo KCompletionBase.lo KCompletion.lo KComboBox.lo KCombiView.lo KColorDrag.lo KColorCombo.lo KColorButton.lo KCmdLineAr ts.lo KCharSelectTable.lo KCharSelect.lo KCModule.lo KButtonBox.lo KBugReport.lo KAuthIcon.lo KAudioPlayer.lo KApplicat idget.lo KActionSeparator.lo KActionMenu.lo KActionCollection.lo KAction.lo KAccel.lo KAboutWidget.lo KAboutPerson.lo K AboutDialog.lo KAboutData.lo KAboutContainer.lo KAboutApplication.lo DCOPObjectProxy.lo DCOPObject.lo DCOPClient.lo Bro .lo ../../../qtjava/javalib/qtjava/libqtjavasupport.la -lkmdi -lkhtml -lkspell -lkio make[4]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala/kdejava' make[4]: Entering directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../.. -I/usr/kde/3.5/include -I/usr/qt/3/include -I. -DQT_THREAD_SUPP RANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=pentium3 -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribu irtual-dtor -fno-exceptions -fno-check-new -fno-common -c -o main.o `test -f 'main.cpp' || echo './'`main.cpp make[4]: *** No rule to make target `org/kde/koala/classnoinst.stamp', needed by `koala.jar'. Stop. make[4]: *** Waiting for unfinished jobs.... make[4]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava/koala' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2/kdejava' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/kdejava-3.5.2/work/kdejava-3.5.2' make: *** [all] Error 2 !!! ERROR: kde-base/kdejava-3.5.2 failed. Call stack: ebuild.sh, line 1543: Called dyn_compile ebuild.sh, line 938: Called src_compile kdejava-3.5.2.ebuild, line 45: Called kde-meta_src_compile kde-meta.eclass, line 410: Called kde_src_compile kde.eclass, line 164: Called kde_src_compile 'all' kde.eclass, line 323: Called kde_src_compile 'myconf' 'configure' 'make' kde.eclass, line 319: Called die !!! died running emake, kde_src_compile:make !!! If you need support, post the topmost build error, and the call stack if relevant. </snip> # emerge --info Portage 2.1.1_pre4-r1 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r3, 2.6.16-reiser4-r6 i686) ================================================================= System uname: 2.6.16-reiser4-r6 i686 AMD Athlon(tm) XP 2000+ Gentoo Base System version 1.6.15 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] app-admin/eselect-compiler: [Not Present] dev-lang/python: 2.3.5-r2, 2.4.3-r1 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.3 dev-util/confcache: [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-r2 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS=" -O2 -march=pentium3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/sha r/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/confi CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/ CXXFLAGS=" -O2 -march=pentium3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig buildpkg ccache distlocks metadata-transfer sandbox sfperms strict userpriv usersandbox" GENTOO_MIRRORS="http://grumpy.346net/gentoo http://gentoo.netnitco.net http://gentoo.osuosl.org http://www.ibiblio.org/ tributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete- --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://grumpy.346net/gentoo-portage" USE="x86 X acpi alsa apache2 apm arts audiofile avi berkdb bitmap-fonts bzip2 cddb cli crypt cups dlloader dri eds embo exif flac font-server foomaticdb fortran gdbm gif gphoto2 gpm gstreamer gtk gtk2 hal ide imlib ipv6 isdnlog jpeg kde k g++ libwww mad mikmod mmx motif mp3 mpeg nas ncurses nls nptl nsplugin oav odbc ogg opengl oss pam pcre pdf pdflib perl pd pthreads python qt qt3 qt4 quicktime readline reflection samba scanner sdl session snmp softmmu spell spl sse ssl sv truetype truetype-fonts type1-fonts udev usb userlocales vorbis wxgtk1 xine xinerama xml xmms xorg xscreensaver xv zlib input_devices_keyboard input_devices_mouse kernel_linux userland_GNU video_cards_mga video_cards_fbdev video_cards_vga" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_O
tried again while performing the following update method: emerge -uD world everything worked fine until kdejava failed. redundantly rebuilding the system didn't fix anything either: emerge -e system emerge -e system emerge -e world emerge -e world the rebuild failed on kdejava with the same result.
sed: -e expression #1, char 16: unknown option to `s' sed: -e expression #1, char 16: unknown option to `s' This comes from this line (as stated previously): for x in Makefile.am Makefile.in; do [...] sed -e "s:_CLASSPATH_:$(java-config -p qtjava):" $x.orig > $x [...] done I think this is due to a bug in the second generation java system: # java-config -p qtjava :/usr/kde/3.5/lib/java/qtjava.jar # java-config-1 -p qtjava /usr/kde/3.5/lib/java/qtjava.jar # java-config-2 -p qtjava :/usr/kde/3.5/lib/java/qtjava.jar Replacing java-config with java-config-1 resolves the issue for me. Of course that won't work for people using the generation 1 java system (dev-java/java-config-1.2.11-r1).
(In reply to comment #8) > # java-config -p qtjava > :/usr/kde/3.5/lib/java/qtjava.jar > # java-config-1 -p qtjava > /usr/kde/3.5/lib/java/qtjava.jar > # java-config-2 -p qtjava > :/usr/kde/3.5/lib/java/qtjava.jar And this comes from the following in /usr/share/qtjava/package.env CLASSPATH=:/usr/kde/3.5/lib/java/qtjava.jar: looks like java-config-1 cares to strip any ':' from both beginning and end, and java-config-2 just from the end. That could be fixed easily. But, properly generated package.env files created by java eclasses don't start or end with ':'. This ebuild forges package.env on its own, and not properly. Moreso, java environment isn't set properly in qtjava-3.5.2 because it doesn't inherit java-pkg eclass, resulting in 1.5 bytecode jar when used with generation-2 java system and 1.5 system vm. qtjava-3.4.3-r1 inherits java-pkg and calls dojar which results in proper bytecode and package.env (done wrt bug 114327). I think this change should be propagated in 3.5 slot as well.
After reading comment 9 I have tested the ebuild from bug #114327 for qtjava. It does work and installs /usr/share/qtjava/package.env as /usr/share/qtjava-3.5/package.env instead (hence making qtjava properly slotted). The CLASSPATH entry becomes: CLASSPATH=/usr/share/qtjava-3.5/lib/qtjava.jar and hence fixes this issue. If bug #114327 is properly resolved like that "-3.5" should be added to the sed call in this bug (or something equivalent). I've just tested with success with: sed -e "s#_CLASSPATH_#$(java-config -p qtjava-3.5)#" $x.orig > $x
Forgot to mention that I have added a comment to bug #114327. I hope someone with appropriate permissions will reopen or fix it properly..
Created attachment 95992 [details, diff] new ebuild patch Okay, fixing qtjava is one thing, but kdejava isn't perfect itself. As with qtjava, kdejava-3.4.3-r1 was fixed to inherit java-pkg and register its jar, but it didn't make it to 3.5 slot. This patch ensures this. Also classpath for qtjava isn't determined by java-config -p, but calling eclass function java-pkg_getjar which records the DEPEND into kdejava's package.env. Sed is using # delimiters because classpath typically contains / and : characters.
Removing blocker as there hasn't any progress on this bug, and I don't want it to hold up stabilizing the new Java system.
Should be fixed in -r1 revisions of kdejava-3.5.x.