kde4 on slack12 – in progress
first off, http://techbase.kde.org/Getting_Started/Build/KDE4
the actual kde4 and qt environment will be within the user 'kde-devel', not on the root filesystem.
wget http://freedesktop.org/~hadess/shared-mime-info-0.22.tar.bz2i'll try source first, which appears to have done fine, built in /home/vbatts/src/redland-1.0.6, installed as root
compiled it, and installed it to it's default '/usr/local/'
cd # Note: qt-copy lives in $HOME/qt-copy. See $QTDIR in .bashrc
svn checkout svn://anonsvn.kde.org/home/kde/trunk/qt-copy
cd qt-copy
./apply_patches
./configure -qt-gif -no-exceptions -debug -fast \
-prefix $QTDIR -nomake examples -nomake demos
make -j2
3570 extern char *XSetOMValues(
3571 XOM /* om */,
3572 ...
3573 ) _X_SENTINEL(0);
3574
3575 extern char *XGetOMValues(
3576 XOM /* om */,
3577 ...
3578 ) _X_SENTINEL(0);
3579
3580 extern Display *XDisplayOfOM(
3581 XOM /* om */
3582 );
3583
3584 extern char *XLocaleOfOM(
3585 XOM /* om */
3586 );
3587
3588 extern XOC XCreateOC(
3589 XOM /* om */,
3590 ...
3591 ) _X_SENTINEL(0);
3592
3593 extern void XDestroyOC(
3594 XOC /* oc */
3595 );
3596
3597 extern XOM XOMOfOC(
3598 XOC /* oc */
3599 );
3600
3601 extern char *XSetOCValues(
3602 XOC /* oc */,
3603 ...
3604 ) _X_SENTINEL(0);
3605
3606 extern char *XGetOCValues(
3607 XOC /* oc */,
3608 ...
3609 ) _X_SENTINEL(0);
the error
45172 /usr/include/X11/Xlib.h:3573: error: expected initializer before '_X_SENTINEL'
45173 /usr/include/X11/Xlib.h:3578: error: expected initializer before '_X_SENTINEL'
45174 /usr/include/X11/Xlib.h:3591: error: expected initializer before '_X_SENTINEL'
45175 /usr/include/X11/Xlib.h:3604: error: expected initializer before '_X_SENTINEL'
45176 /usr/include/X11/Xlib.h:3609: error: expected initializer before '_X_SENTINEL'
45177 /usr/include/X11/Xlib.h:3841: error: expected initializer before '_X_SENTINEL'
45178 /usr/include/X11/Xlib.h:3845: error: expected initializer before '_X_SENTINEL'
45179 /usr/include/X11/Xlib.h:3857: error: expected initializer before '_X_SENTINEL'
45180 /usr/include/X11/Xlib.h:3885: error: expected initializer before '_X_SENTINEL'
45181 /usr/include/X11/Xlib.h:3889: error: expected initializer before '_X_SENTINEL'
45182 /usr/include/X11/Xlib.h:3929: error: expected initializer before '_X_SENTINEL'
45183 g++ -c -include .pch/debug-shared/QtGui -pipe -g -fno-exceptions -pthread -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -g -fvisibility=hidden -fvisibility-inlines-h
45183 idden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_GUI_LIB -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_44_API_QSQLQUERY_FINISH -DQT3_SUPPORT -DQT_MOC_COMPAT
45183 -DQT_RASTER_IMAGEENGINE -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_NO_STYLE_MAC -DQT_NO_STYLE_WINDOWSVISTA -DQT_NO_STYLE_WINDOWSXP -D
45183 Q_INTERNAL_QAPP_SRC -DQT_CORE_LIB -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/linux-g++ -I. -I../../include/QtCore -I../../include/QtCore -I../../include -I.
45183 ./../include/QtGui -I/usr/include/freetype2 -I/usr/include/freetype2 -I../3rdparty/harfbuzz/src -Idialogs -I.moc/debug-shared -I/usr/include -I.uic/debug-shared -o .obj/de
45183 bug-shared/qslider.o widgets/qslider.cpp
45184 make[1]: *** [.obj/debug-shared/qsizegrip.o] Error 1
45185 make[1]: *** Waiting for unfinished jobs....
45186 make[1]: Leaving directory `/home/kde-devel/svn/qt-copy/src/gui'
45187 make: *** [sub-gui-make_default-ordered] Error 2
so after a little bit of googling i found and incerted a definition for this _X_SENTINEL function in the /usr/include/X11/Xlib.h header. I've attached the diff i created if you want to reference it or re-use it.
success on QT, it is installed. moving on
/var/log/packages/openssl-0.9.8e-i486-3 is already installed
/var/log/packages/openssl-solibs-0.9.8e-i486-3 is already installed
and i'm not finding much info on this libz/libz2 library
the `cmakekde` call inside the kdesupport dir, has just errored out 11% precent of the way through it.
update, i've found a download at http://freeware.sgi.com/source/libz/zlib-1.1.4.tar.gz, i'm going to install it.
and the libbz2 appears to be a part of the bzip2 package, and this appears to be installed
vbatts@slacker:~/src/zlib-1.1.4$ find /usr/lib/ -name libbz2*
/usr/lib/libbz2.a
/usr/lib/libbz2.so
vbatts@slacker:~/src/zlib-1.1.4$ ls /var/log/packages/bz*
/var/log/packages/bzip2-1.0.4-i486-1
success on kdesupport compiling and installing
( while this is going on, i'm removing all of the kde3 packages installed as standard, and i had downloaded the tgz's for easy re-install .
primarily because the kde3 install is in /usr/bin and it's advisable to not have it in the $PATH of the kde4 install and user. )
( also, also, to save time i'm checking out the kdepimlibs from trunk while kdelibs is compiling
kindof multi-tasking on this AMD 900mhz machine, current machine stats
kde-devel@slacker:~$ uptime
14:37:56 up 18 days, 1:06, 4 users, load average: 4.82, 3.93, 2.66
)
and it has just errored out 50% of the way through
after digging through the diferent outputs, it appears to be referring to an enchant package that wasn't installed. so i looked for its source package and found it on a debian site, so i download it and its patch. ( http://ftp.debian.org/debian/pool/main/e/enchant/enchant_1.3.0.orig.tar.gz )
i've configure'd it (it and kde are referring to a missing hspell lib, which is for Hebrew spell checking? not going there) , compiling it, and have intalled it as root
also its was referring to missing JasPer (http://www.ece.uvic.ca/~mdadams/jasper/software/jasper-1.900.1.zip)
i've configure'd it, compiling it, and installed it as root
also its was reffering to a missing OpenEXR package, so i found its source at http://www.openexr.com/ i've downloaded http://download.savannah.nongnu.org/releases/openexr/openexr-1.6.0.tar.gz, we'll give it a try instead. and this refers to a ilmbase (http://download.savannah.nongnu.org/releases/openexr/ilmbase-1.0.0.tar.gz).
so i've compiled and installed the ilmbase, as root.
since its' installed needed lib's, i had to run ldconfig so that the ./configure of OpenEXR found the needed lib's
and success on that building, now back to kdelibs
kdesupport has a couple of lib's that its is complaining are not there, Exiv2 (http://www.exiv2.org/exiv2-0.15.tar.gz), CppUnit (http://www.slacky.eu/repository/slackware-12.0/development/cppunit/1.12.0/cppunit-1.12.0-i486-1as.tgz) and the Java SDK (http://slackware.osuosl.org/slackware-12.0/extra/jdk-6/jdk-6u2-i586-2.tgz). this is just odd, after i had downloaded the cppunit slack pack, and was waiting on the jdk-6u2 slack pack. i attempted to `cmakekde` in the kdesupport dir, and it appears something has removed /usr/bin/makeobj from the system. so i've re-established it with the version provided on the kde4 build site. after installing these dependencies, kdesupport and all of it's modules build and install.
so back to kdelibs, and its just not building, so i've tried `svn up` to see if there are later commits to fix my issues, and now `cmakekde` has made it from 50% to 94% and has died on a khtml process, so i cd'd back to the kdelibs src directory, and into khtml. called `make -j2`, and it built 100%. so i backed into the kdelibs src dir again, and instead of calling the cmakekde function, i've just called `make -j2`, and it build 100%, so i've called `make install`.
i guess this is success on kdelibs, it feels kindof bootlegged though. after this i've run ldconfig as root again, to rebuild the lib index
since this could take a while, and its past midnight right now, i've called the build as `time cmakekde &>/dev/null &`, so i can just let it run and read about it later.
it did not build by itself, so i cd'd into the runtime and `cmakekde` it alone, and it built and installed.
next i cd'd into the workspace directory of kdebase, and it imediately gave a cmake error. so i `svn up`'d, which downloaded a lot. so i resumed, and it is building now, but had complained about a few missing lib's, libxklavier, libcaptury, NetworkManager, libnm-util, and RAW1394. of this i will just include the libxklavier from http://internap.dl.sourceforge.net/sourceforge/gswitchit/libxklavier-3.3.tar.gz, and now i've download NetworkManager from http://ftp.gnome.org/pub/GNOME/sources/NetworkManager/0.6/NetworkManager-0.6.5.tar.bz2) and you'll need the flag '--without-gnome' unless you have the whole core of gnome installed, and it requires dhcdbd, and i haven't found a good source bundle for this yet, so i'm gonna hold on this for now.
while i'm at it i've download a source bundle of libcaptury at ubuntu (http://archive.ubuntu.com/ubuntu/pool/universe/libc/libcaptury/libcaptury_0.3.0+svn20070725.orig.tar.gz)., and capseo.
ok, so runtime is compiling fine, but the workspace is constantly hanging up. currently the fatal error is on
/usr/bin/c++ -fPIC -Wnon-virtual-dtor -Wno-long-long -ansi -Wundef -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -Wformat-security -fno-exceptions -fno-check-new -fno-common -fvisibility=hidden -g3 -fno-inline -Wl,--fatal-warnings -Wl,--no-undefined -lc -shared -Wl,-soname,libkwineffects.so.1 -o ../../lib/libkwineffects.so.1.0.0 "CMakeFiles/kwineffects.dir/kwineffects_automoc.o" "CMakeFiles/kwineffects.dir/kwinglobals.o" "CMakeFiles/kwineffects.dir/kwineffects.o" "CMakeFiles/kwineffects.dir/kwinglutils.o" "CMakeFiles/kwineffects.dir/kwinglutils_funcs.o" "CMakeFiles/kwineffects.dir/kwinshadereffect.o" -L/usr/local/lib -L/home/kde-devel/svn/qt-copy/lib -L/home/kde-devel/kde/lib -lQtCore -lpthread -lQtNetwork -lQtDBus -lQtXml -lz -lbz2 -lresolv -lkdecore -lQtGui -lSM -lICE -lX11 -lXext -lXft -lXau -lXdmcp -lXpm -lXrender -lXrandr -lXcomposite -lXdamage -lXfixes
CMakeFiles/kwineffects.dir/kwinglobals.o: In function `KWin::Extensions::init()':
/home/kde-devel/kde/src/KDE/kdebase/workspace/kwin/lib/kwinglobals.cpp:117: undefined reference to `XSyncQueryExtension(_XDisplay*, int*, int*)'
/home/kde-devel/kde/src/KDE/kdebase/workspace/kwin/lib/kwinglobals.cpp:120: undefined reference to `XSyncInitialize(_XDisplay*, int*, int*)'
collect2: ld returned 1 exit status
make[2]: *** [lib/libkwineffects.so.1.0.0] Error 1
make[2]: Leaving directory `/home/kde-devel/kde/build/KDE/kdebase/workspace'
make[1]: *** [kwin/lib/CMakeFiles/kwineffects.dir/all] Error 2
i'm not sure where this class needs to get defined before being referenced here, so appearantly something isn't compiled that should be, which could mean more package chasing.
Okay so i'm back at it, and i'm frustrated. I'm about get ugly, and non-standard, but i really want to see a running desktop, before KDE4 is released.