Registered Member
|
Hi. There's a little bug with the fuzzy clock width in panels, and I figured it'd be easy to fix, so I'm using it as something to cut my teeth on.
I think I fixed it, but now I can't figure out how to build it to find out. I untared the kdeplasma-addons file, and then after editing the code, ran
in the fuzzy-clock directory. Since it's the kde source package, it has what I assume to be the right CMakeLists.txt file, but cmake is failing with
I looked at the cmake tutorials in the Techbase tutorials but they didn't really seem to indicate that I was doing something terribly wrong. Can someone help me out? If you need more information, just ask.
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
KDE modules don't support building a single subdirectory unfortunately. You will need to checkout the entire module, make your changes then configure it in the top level directory:
Example: I made changes in ~/kdemodule/application/src/ I would create "build" in ~/kdemodule and run cmake there, Then I would change to ~/kdemodule/build/application/src/ and perform "make" there Hope this helps
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
Thanks. I'll test it out tonight. I managed to compile it last night by finagling portage but that method was way way too difficult. I wouldn't want to use it for debugging my work.
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Registered Member
|
Thanks. The cmake worked. But now make is failing. It compiles fine, but fails at the linking stage:
(If some one could point me to a tutorial perhaps, instead of having to come back to the forum, that'd be totally fine)
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
Which svn link did you use to checkout from?
svn://anonsvn.kde.org/trunk/KDE/kdeplasma-addons/
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
Mmm. I didn't. Since I use Gentoo, I just used the 4.2.1 sources that were already in my portage distfiles.
I take it I should be using svn trunk sources instead?
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
That should be fine then. I have never seen CMake have a linker error however. Where is KDE 4.2 installed on your system? Is the library directory inside that $KDEDIR/libs/ contained in /etc/ld.so.conf?
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
KDEDIR is /usr/ i think, since all the programs are in /usr/bin, and all the libraries appear to be in /usr/lib and /usr/lib/kde4. I added the latter to /etc/ld.so.conf, but with no effect. The former was already there, of course.
I think the likely candidates for a match are libplasmaclock.so, libplasmaclock.so.4, or libplasmaclock.so.4.2.0 which are all in /usr/lib Is there some way I can figure out where it's looking for the library?
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
Is Plasma clock present under /usr/lib64/? You are using the 64bit versions of gcc and ld.
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
lib is a symlink to lib64, so yes.
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
Can you please execute make with "VERBOSE=1" and paste the output here?
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Administrator
|
Try using this command instead:
/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 -Woverloaded-virtual -fno-threadsafe-statics -fvisibility=hidden -fvisibility-inlines-hidden -O2 -g -Wl,--enable-new-dtags -Wl,--fatal-warnings -Wl,--no-undefined -lc -shared -Wl,-soname,plasma_applet_fuzzy_clock.so -o ../../lib/plasma_applet_fuzzy_clock.so CMakeFiles/plasma_applet_fuzzy_clock.dir/plasma_applet_fuzzy_clock_automoc.o CMakeFiles/plasma_applet_fuzzy_clock.dir/fuzzyClock.o -L/usr/lib64/qt4 /usr/lib64/libplasmaclock.so /usr/lib64/libplasma.so.3.0.0 /usr/lib64/libkdeui.so.5.2.0 /usr/lib64/qt4/libQtSvg.so /usr/lib64/libkdecore.so.5.2.0 /usr/lib64/qt4/libQtDBus.so /usr/lib64/qt4/libQtCore.so -lpthread /usr/lib64/qt4/libQtGui.so -Wl,-rpath,/usr/lib64/qt4:::::::::::::::::
KDE Sysadmin
[img]content/bcooksley_sig.png[/img] |
Registered Member
|
Ooh! I was just about to tell you what a resounding failure that was, because when I first looked at it, I thought you only removed the -lKDE4Workspace__plasmaclock bit, and that failed miserably. But then I copy and pasted, and it worked excellently.
So thanks! What did you do, why did it work, and how can I make it automatically generate that command in the future, so I don't have to go in and change that file every time?
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Registered Member
|
oh, I think I've figured it out...
You switched -lKDE4Workspace__plasmaclock to /usr/lib64/libplasmaclock.so And it looks like that's called from CMakeLists.txt in the ${KDE4WORKSPACE_PLASMACLOCK_LIBRARY} variable, which must be misdefined somewhere. So, I could either hard code it to the right value, or try and find the initial definition and fix it, correct?
Timmer, proud to be a member of KDE forums since 2008-Nov.
|
Registered users: Bing [Bot], claydoh, Google [Bot], rblackwell