Two parts of the new Kde 3.1 ebuilds drop out while compiling. Compiler on my system is gcc 2.95, the rest of the system should be up-to-date: kdeartwork dies with: /usr/qt/3/include/qdir.h: At top level: /usr/qt/3/include/qdir.h:230: no `bool QDir::operator !=(const QDir &) const' member function declared in class `QDir' In file included from /usr/kde/3.1/include/kfiledialog.h:32, from kxscontrol.cpp:31, from kxsconfig.all_cpp.cpp:3: /usr/kde/3.1/include/kfile.h: In function `static bool KFile::isSortByName(const QDir::SortSpec &)': /usr/kde/3.1/include/kfile.h:74: confused by earlier errors, bailing out cpp0: output pipe has been closed make[4]: *** [kxsconfig.all_cpp.o] Fehler 1 make[4]: *** Warte auf noch nicht beendete Prozesse.... In file included from kxsrun.all_cpp.cpp:3: kxscontrol.cpp: In method `KXSDropListControl::KXSDropListControl(QWidget *, const QString &, KConfig &)': kxscontrol.cpp:193: warning: comparison between signed and unsigned make[4]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdeartwork-3.1_beta1/work/kdeartwork-3.0.7/kscreensaver/kxsconfig make[3]: *** [all-recursive] Fehler 1 make[3]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdeartwork-3.1_beta1/work/kdeartwork-3.0.7/kscreensaver/kxsconfig make[2]: *** [all-recursive] Fehler 1 make[2]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdeartwork-3.1_beta1/work/kdeartwork-3.0.7/kscreensavermake[1]: *** [all-recursive] Fehler 1 make[1]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdeartwork-3.1_beta1/work/kdeartwork-3.0.7 make: *** [all] Fehler 2 !!! ERROR: The ebuild did not complete successfully. !!! Function kde_src_compile, Line -7409, Exitcode 2 !!! died running emake, kde_src_compile:make !!! emerge aborting on /usr/portage/kde-base/kdeartwork/kdeartwork-3.1_beta1.ebuild Also kdemultimedia does not work: tracksconfigimp.moc:151: warning: initializer list being treated as compound expression tracksconfigimp.moc:151: warning: initialization to `int' from `QUObject *' lacks a cast tracksconfigimp.moc:151: multiple initializations given for `activate_signal' tracksconfigimp.moc:152: parse error before `}' tracksconfigimp.moc: In method `bool TracksConfigImp::qt_emit(int, QUObject *)': tracksconfigimp.moc:181: use of `Job' is ambiguous job.h:44: first declared as `class Job' here /usr/kde/3.1/include/kio/jobclasses.h:339: also declared as `class KIO::Job' here tracksconfigimp.moc:181: parse error before `)' In file included from /usr/kde/3.1/include/ksock.h:38, from cddb.cpp:35, from kaudiocreator.all_cpp.cpp:9: /usr/include/netinet/in.h: At top level: /usr/include/netinet/in.h:259: parse error before `)' /usr/include/netinet/in.h:259: parse error before `?' /usr/include/netinet/in.h:259: parse error before `)' /usr/include/netinet/in.h:260: parse error before `)' /usr/include/netinet/in.h:260: parse error before `?' /usr/include/netinet/in.h:260: parse error before `)' /usr/include/netinet/in.h:262: parse error before `)' /usr/include/netinet/in.h:262: parse error before `?' /usr/include/netinet/in.h:262: parse error before `)' /usr/include/netinet/in.h:264: parse error before `)' /usr/include/netinet/in.h:264: parse error before `?' /usr/include/netinet/in.h:264: parse error before `)' In file included from /usr/kde/3.1/include/ksock.h:38, from cddb.cpp:35, from kaudiocreator.all_cpp.cpp:9: /usr/include/netinet/in.h:367: parse error before `}' make[3]: *** [kaudiocreator.all_cpp.o] Error 1 make[2]: *** [all-recursive] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2
I had an earlier error in kdemultimedia (same directory) that applying the changes from the CVS tree (http://webcvs.kde.org/cgi-bin/cvsweb.cgi/kdemultimedia/kaudiocreator/cdconfigimp.cpp.diff?r1=1.6&r2=1.7) fixed, but I don't see where they broke this between 3.1alpha and 3.1beta.. ?
Ok I tracked this one down, it is the "--enable-final" flag which the kde eclasses pass during configuration. I located the exact same error as you mentioned for kdemultimedia in: http://lists.kde.org/?l=kde-devel&m=102302245611701&w=4 I discovered the solution in the followup: http://lists.kde.org/?l=kde-devel&m=102304171122478&w=4 I patched kde-dist.eclass to remove the "--enable-final" from the 3.1_beta1 ebuilds. The modified eclass is attached. This fixes the problems in kdemultimedia. I'm guessing it might fix the kdeartwok problems as well (still compiling, haven't got that far yet). ****NOTE TO DAN****: I was *still* required to use the Brian's diff to fix namespace issues in kaudiocreator. Please update the ebuild with his patch as well.
Created attachment 3389 [details] kde-dist.eclass The modified kde-dist.eclass which properly builds kde 3.1_beta1.
After using the modified eclass, kdemultimedia drops out later on with: Making all in TIMIDITY make[3]: Wechsel in das Verzeichnis Verzeichnis /var/tmp/portage/kdemultimedia-3.1_beta1/work/kdemultimedia-3.0.7/kmidi/TIMIDITY ./makelinks ./.. ./makelinks ./.. ln: ./common.h: Datei existiert ln: ./mix.h: Datei existiert ln: ./sflayer.h: Datei existiert ln: ./tables.h: Datei existiert ln: ./version.h: Datei existiert ln: alsa_a.c: Datei existiert ln: arts_a.c: Datei existiert ln: bag.c: Datei existiert ln: celeste_e.c: Datei existiert ln: chorus_e.c: Datei existiert ln: common.c: Datei existiert ln: cfg.c: Datei existiert ln: ctl.c: Datei existiert ln: dumb_c.c: Datei existiert ln: gentxt.c: Datei existiert ln: getopt.c: Datei existiert ln: hpux_a.c: Datei existiert ln: linux_a.c: Datei existiert ln: linux_a2.c: Datei existiert ln: mix.c: Datei existiert ln: nas_a.c: Datei existiert ln: ncurs_c.c: Datei existiert ln: output.c: Datei existiert ln: playmidi.c: Datei existiert ln: raw_a.c: Datei existiert ln: readmidi.c: Datei existiert ln: readsbk.c: Datei existiert ln: resample.c: Datei existiert ln: resample_f.c: Datei existiert ln: resample_l.c: Datei existiert ln: reverb_e.c: Datei existiert ln: timidity.c: Datei existiert ln: wav2pat.c: Datei existiert ln: wave_a.c: Datei existiert ln: ./cfg.l: Datei existiert touch buildhack ln: ./BITMAPS: Datei existiert make[3]: *** [common.c] Fehler 1 make[3]: *** Warte auf noch nicht beendete Prozesse.... make[3]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdemultimedia-3.1_beta1/work/kdemultimedia-3.0.7/kmidi/TIMIDITY make[2]: *** [all-recursive] Fehler 1 make[2]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdemultimedia-3.1_beta1/work/kdemultimedia-3.0.7/kmidi make[1]: *** [all-recursive] Fehler 1 make[1]: Verlassen des Verzeichnisses Verzeichnis /var/tmp/portage/kdemultimedia-3.1_beta1/work/kdemultimedia-3.0.7 make: *** [all] Fehler 2 !!! ERROR: The ebuild did not complete successfully. !!! Function kde_src_compile, Line -6657, Exitcode 2 !!! died running emake, kde_src_compile:make !!! emerge aborting on /usr/portage/kde-base/kdemultimedia/kdemultimedia-3.1_beta1.ebuild . At the moment I am trying to build kdeartwork again, will post results later.
kdeartwork builds fine with the new eclass. So we are getting closer ;-)
Created attachment 3391 [details] kdemultimedia-3.1_beta1-kaudiocreator.diff Add a similar entry to the ebuild right below the timidy patch, except substitute the patch name for this patch's name. This is a patch for Brian's fix.
Created attachment 3392 [details, diff] kdemultimedia-3.1_beta1-gentoo-timidity.diff This is an update to the kdemultimedia-3.1_beta1-gentoo-timidity.diff which resolves the symlink problem. Employing the modified eclass and each of these patches, I can now confirm kdemultimedia builds successfully.
I can confirm that kde 3.1 now builds fine with the new eclass and the patches applied. thanks suka
I just wanted to throw in a confirmation as well. After failing to compile before (gcc 3.2, march=athlon-xp, standard flags), with the eclass and 2 diffs I was able to compile ~multimedia ( I also failed on ~toys and ~pim, but other bug reports have ebuilds and diffs that fixed those for me). So.. for my setup, a full Kde 3.1 install required (http://bugs.gentoo.org/show_bug.cgi?id=6958) , (http://bugs.gentoo.org/show_bug.cgi?id=6963) , and the fixes included here.
Is anyone else experiencing strange problems with kde/kwin? For some reason, it refuses to put titlebars on the windows (so I can't move them around and such). I did have a kernel oops, so maybe some exe got corrupted. I guess I'll have to go back and rebuild kdelibs/kdebase and see if it doesn't fix it. Sill, it's very wierd.
OK, this looks good, I like seeing fixes submitted, great work guys :-) I'll test compiling with the patches and if it goes smoothly, I'll commit them tomorrow morning. Nicholas: if you wrote the new part of the timidity path yourself (the ln -sf thing), you should submit it to bugs.kde.org and/or kde-multimedia@mail.kde.org. It's a fix applicable to current cvs as well, I didn't have time to take care of the problem myself so I just disabled make -j2 (emake) in the kdemultimedia ebuild to work around it. This fix may make that unnecessary (will test). BTW, I've disabled --enable-final in all 3.1_beta1 packages (just lke in the modified eclass here), it causes too many problems in unstable releases.
OK, I've committed the patches. Good work Nicholas. Please tell me what you're going to do with the ln -sf patch.
Ok, I submitted the symlinking issue to kde bugs. The bug number is #47347. I'm actually quite surprised that no one has caught it yet. It's still a problem in CVS as of today.