some changes for building dcop/

Alexander Neundorf neundorf at kde.org
Fri Feb 10 21:37:22 CET 2006


On Friday 10 February 2006 21:19, Brad King wrote:
> Marcus Camen wrote:
> > On Wednesday 08 February 2006 21:39, Alexander Neundorf wrote:
> >>kICE is now built as a static library and libDCOP and the two
> >>testprograms link to it. For me this still builds, please check whether
> >>this breaks something on windows.
> >
> > Since this commit I get:
> >
> > Linking CXX shared library ../lib/libDCOP.so
> > cd /home/camen/src/kde/kdesvn/build/kdelibs/dcop &&
> > /home/camen/usr/bin/cmake -E remove -f ../lib/libDCOP.a
> > ../lib/libDCOP.so.4.2.0 ../lib/libDCOP.so.4 ../lib/libDCOP.so cd
> > /home/camen/src/kde/kdesvn/build/kdelibs/dcop && /usr/bin/c++  -fPIC
> > -Wl,--fatal-warnings -avoid-version -Wl,--no-undefined -lc -shared
> > -Wl,-soname,libDCOP.so.4 -o ../lib/libDCOP.so.4.2.0
> > "CMakeFiles/DCOP.dir/dcopstub.o" "CMakeFiles/DCOP.dir/dcopref.o"
> > "CMakeFiles/DCOP.dir/dcopobject.o" "CMakeFiles/DCOP.dir/dcopclient.o" 
> > -L/home/camen/src/kde/kdesvn/build/kdelibs/lib
> > -L/home/camen/src/kde/kdesvn/qt-copy/lib -L/usr/local/lib -lQtCore_debug
> > -lpthread -lkICE
> > -Wl,-rpath,/home/camen/src/kde/kdesvn/build/kdelibs/lib:/home/camen/src/k
> >de/kdesvn/qt-copy/lib:/usr/local/lib
> > /usr/lib64/gcc/x86_64-suse-linux/4.0.2/../../../../x86_64-suse-linux/bin/
> >ld: /home/camen/src/kde/kdesvn/build/kdelibs/lib/libkICE.a(connect.o):
> > relocation R_X86_64_32 against `_kde_IceConnectionStrings' can not be
> > used when making a shared object; recompile with -fPIC
> > /home/camen/src/kde/kdesvn/build/kdelibs/lib/libkICE.a: could not read
> > symbols: Bad value
>
> This is because kICE is built as a static library and then linked
> (copied) into a shared library.  The object files in the static library
> do not contain relocatable symbols so it is not valid to include them in
> a shared library.  We should build kICE either as its own shared library
> to be linked with DCOP or build the kICE sources into DCOP as is done
> for the windows DLL.

Ok, I'll change it back.
I hoped that this might make compiling the stuff a bit easier, and it doesn't 
have to be compiled three times (once for libDCOP, and twice for the test 
programs)

Alex
-- 
Work: alexander.neundorf AT jenoptik.com - http://www.jenoptik-los.de
Home: neundorf AT kde.org                - http://www.kde.org
      alex AT neundorf.net               - http://www.neundorf.net


More information about the Kde-buildsystem mailing list