MonthOctober 2007

kde4 on slack12 – in progress (take 2)

  • Okay, again i’m back at it, but after googling a little, the ‘XSyncQueryExtension’ is a function that should be provided in libXext, while the X11/extensions/sync.h performs an extern status XSyncQueryExtension, it hadn’t been defined yet. so i’ve download the source from, and compiling and installing it as root. … BUT ARGG /var/log/packages/libXext-1.0.3-i486-1 is already installed!! ok, so i’m not going to install this source bundle. crap, why isn’t this linking properly. even in the command that fails it has ‘-lXext’ flag, but is still an undefined reference,eerrrghh
  • kde4 on slack12 – in progress

    first off,

    the actual kde4 and qt environment will be within the user ‘kde-devel’, not on the root filesystem.

  • first potential issue, is it prefers g++ 4.2, slack has 4.1.2
  • the `makeobj` script was already installed. the install version had added a verbose flag.
  • downloaded, compiled and installed (as root) shared mime info (with no special options/flags)
  • boost, I downloaded (, extracted it to ‘/usr/local/boost_1_34_1’ and created a sym link to it as ‘/usr/local/include/boost’
  • cmake appears to already be installed cmake version 2.4-patch 6
  • downloading the source to redland ( for ‘librdf ‘, but i’ve also found a slack pack at (
    i’ll try source first, which appears to have done fine, built in /home/vbatts/src/redland-1.0.6, installed as root
  • clucene, checked it out from their svn.
    compiled it, and installed it to it’s default ‘/usr/local/’
  • /var/log/packages/dbus-1.0.2-i486-3 is already installed
  • /var/log/packages/dbus-glib-0.73-i486-1 is already installed
  • /var/log/packages/cmake-2.4.6-i486-2 is already installed
  • environment variables are almost identical the the sample bashrc provided on the KDE site. I did make a number of symlinks though, because login as ‘kde-devel’ didn’t seem to pick up ~/.bashrc, so I ‘ln -s’ as ~/.bash_profile and ~/.shrc
  • Qt

    cd # Note: qt-copy lives in $HOME/qt-copy. See $QTDIR in .bashrc
    svn checkout svn://
    cd qt-copy
    ./configure -qt-gif -no-exceptions -debug -fast
    -prefix $QTDIR -nomake examples -nomake demos
    make -j2
  • so qt-copy is crashing out in Xlib.h for a _X_SENTINEL function, having not been initialized. on slackware this will be slightly interesting finding what package is going to solve this unmatched dependency. following is a section of Xlib.h that is crashing and following that is the compiled time error.

    3570 extern char *XSetOMValues(
    3571 XOM /* om */,
    3572 ...
    3573 ) _X_SENTINEL(0);
    3575 extern char *XGetOMValues(
    3576 XOM /* om */,
    3577 ...
    3578 ) _X_SENTINEL(0);
    3580 extern Display *XDisplayOfOM(
    3581 XOM /* om */
    3582 );
    3584 extern char *XLocaleOfOM(
    3585 XOM /* om */
    3586 );
    3588 extern XOC XCreateOC(
    3589 XOM /* om */,
    3590 ...
    3591 ) _X_SENTINEL(0);
    3593 extern void XDestroyOC(
    3594 XOC /* oc */
    3595 );
    3597 extern XOM XOMOfOC(
    3598 XOC /* oc */
    3599 );
    3601 extern char *XSetOCValues(
    3602 XOC /* oc */,
    3603 ...
    3604 ) _X_SENTINEL(0);
    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 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

  • on to the ‘kde-support’ stuff, Strigi is requiring of a libz, libbz2, openssl (libcrypto, and libssl)
    /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, 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*
    vbatts@slacker:~/src/zlib-1.1.4$ ls /var/log/packages/bz*

    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

  • Moving on to the kdelibs
    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. ( )
    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 (
    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 i’ve downloaded, we’ll give it a try instead. and this refers to a ilmbase (
    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
  • kdelibs is failing again, something about a soprano class that is not being properly referenced. after going back to the kdesupport src dir, the soprano module says it is not being compiled, so now to figure why that is.
    kdesupport has a couple of lib’s that its is complaining are not there, Exiv2 (, CppUnit ( and the Java SDK ( 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
  • on to kdepimlibs, cd’d into the src dir, `cmakekde` and roughly 20minutes later 100% built and installed
  • on to kdebase, in its configuration setup, its complaining about networkManager and Capseo not being installed, i’ve heard bad things about networkManager and slackware, so i’m not going to bother going down that road with this install. and Capseo is for handling capturing video, while that sounds nice. its not needed for this install.
    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, and now i’ve download NetworkManager from 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 (, 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, -o ../../lib/ "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/] 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.

  • koffice is referring to a QCA2 package, (
  • n770

    so i am thoroughly enjoying this nokia internet tablet, i had reflashed it to an early version of it’s OS, but quickly returned to the 2007 hacker’s edition. the only thing i’m lacking, that is missed, is the flash player plugin. so, many website functions are not available, but i’m ok with this.

    much of what i do on a regular basis is reading news feeds ,playing Mahjong, listening the local mp3’s or internet radio. but i’ve ultimately enjoyed the fact that it is like home in my pocket, i found HowTo’s to put a root kit on it, and give the ability to start treating more like a native linux machine. i have had to refrain from just totally decimating it, so i don’t have to re-flash it, because there is still a level of laziness to my methods.

    it is a debian base system, and their frontend package manager is a fine package manager, but once you have added the community repository enough to install the xterm program, then you can just ‘vi /etc/apt/source.lst’ and add more repos their. ¬† of the extra things i’ve installed so far is the ‘minimo’ mozilla browser, xterm, nmap, mplayer, pidgin (xmpp,aim,irc), video center (video podcast manager), vncviewer, maemopad+ (notepad database thing…), maemo-wordpy (wordpress client for blogging),

    here are a few more random snaps i’ve just taken,
    * n770 xterm
    * n770 FileManager
    * n770 HomeScreen
    * n770 pidgin
    * n770 pdf

    battery life is very dependent on usage, i try to keep the screen almost as dim as it will go and only kick on the wireless mode when needed. and even if i’m surfing the web, i’ll turn off the bluetooth if i’m not using it. on average i will deplete it every other day. But if i’m hammering on it, or just surfing the web for hours, it will die in just a couple of hours. you give and take.

    most of my browsing is done in doors, so i can keep the screen tuned all the way down. but if you need to look at it and you are out doors, the brightness cranked all the way up is visible for a LCD type, but it can still be challenging. i can accept this for now, many devices are like that.

    portability, i carry it in my pocket most everywhere i go now. it spoons with the brick of a work phone (700w Treo) i carry. if i’m going home to work, vice versa, i’ll probably through it in my bag. But as soon as i’m at the office, its on my desk or in my pocket. the only thing about its apperance that *partially* disturbs me is that people might think i’m playing a PSP or some gameboy type console…

    Personal Experiences

    Last weekend, my wife and took the nice occasion to have a babysitter come, so that we could have a date night. This was dually special, not only for a little alone time, but also because the movie Across the Universe had just been released. For the record, regardless of the stupid reviews, this movie is super.
    The story is entirely nice and simple, believable, and real. Also this movie is a musical, as well it should be.
    It is a perfect synthesis and application of energy in the Beatles songs that soundtrack it. Almost as if the egg came before the chicken, they made the music of the soundtrack, long before it was utilized this way.

    i walked away from the theatre not necessarily thinking of what a great story, but about all the moments i can remember those songs settling with me, in my life. To exadurate  this point further, as we were walking out of the theatre, there was a group of high school kids that had exited the same movie with us, and they essentially bickering over who was the bigger Beatles fan. On first hear, i thought they sounded trivial and stupid, but after letting their emotions run in me for a second, it made me appreciate the Beatles that much more. My Parents have had, and still have experiences with the same music that i have made memories with, and so on.

    there were three separate instances in the movie when i cried or teared up,

    1st was primarily for sadness and partially for beauty (when the young black boy was obviously killed and the church choir was singing)

    2nd was for beauty (when they were laying in the star formation singing “Because the sky is high”)

    3rd was for love ( the rooftop concert reunion)

    this has been a movie worth it to go to the theatre to see and one that i intend on purchasing the DVD to have in my collection.

    kde4 on slack12

    i’ve just taken it on as a goal and project to get a working compile of the KDE4 trunk since it’s release is coming up on the 18th and it hasn’t been branched out yet. and what better than to try it on a slackware install that i’m not use to.
    so far there have been a few things interesting about it, since i can’t just install some *-devel or *-dev packages to satisfy the header dependencies needed. But good thing is that slack is still a very from source distro, prepared for compiling, so many of the needed libraries and headers are already there.
    primarily i’m building it on a slack box for a couple of different reasons.
    1) i don’t want to mess with my personal or work laptop and there environments.
    2) i have a system installed and running a standard Slackware 12.0 install, that isn’t being used for anything right now.
    3) they didn’t have the howto’s reference on the kde4 build tutorial, that calls to a challenge in me
    4) i feel that, if i get it done in a timely manner, providing my howto and documentation could contribute back to the community.

    i will add more blog posts here, and any needed files will go to


    Cool Toys

    So this blog is coming to you from a Nokia n770 internet tablet. l’m test driving it to see if it’s something l would spend my money on. The keyboard takes a little getting used to, but l can look past that. So far l reflashed it with the 2OO7 hacker edition so it has the feel of the new N8OO model. Nokia has used the Debian package manager, and there’s plenty of good repositories for open source apps, and they’ve made the GUl package tool easy to add repos add/remove apps. Because of this, l’ve now got vnc, terminal, ssh, this wordpress blogging app and a significant textpad. But i’ve got to run now, i’ll post more later.