[kde-solaris] Building from 3.5.7
Michael Lindig
michael.lindig at informatik.tu-chemnitz.de
Wed Jul 18 15:56:04 CEST 2007
Daniel Rawson wrote:
> Michael Lindig wrote:
>> Daniel Rawson wrote:
>>> I'm attempting to build from the modified 3.5.7 source code that was provided by Michael Lindig (thanks!!!), but I'm having problems with the dependency on libart_lgpl_2.
>>>
>>> I'm running Solaris 10 (01/06) and using gcc 3.4.3 as the compiler. I re-built QT 3.3.8 and it is installed locally.
>>>
>>> When I build kdelibs, it complains about /usr/lib/libart_lgpl_2.so with a "Wrong ELFCLASS" message. I re-built libart_lgpl_2 (version 2.3.19) from source; when I use the updated library, I get "Undefined symbol" errors on just three of the "art_*" symbols:
>>>
>>> Undefined first referenced
>>> symbol in file
>>> art_free(void*) ./.libs/libkdecore.so
>>> art_alloc(unsigned long) ./.libs/libkdecore.so
>>> art_realloc(void*, unsigned long) ./.libs/libkdecore.so
>>>
>>> Any hints will be appreciated!!
>> is there any -lart_lgpl_2 option at linking? Can you provide the entire linking
>> command line where libkdecore.so was build? What are you environment options
>> (CFLAGS, CXXFLAGS, CC, ...)?
>>
>>> Thanks . . . .
>>>
>>> Dan
> Michael -
>
> Here's the link line (sort of long, sorry!) - it does include libart_lgpl_2.so. I tried manually modifying the link line so that it used -lart_lgpl_2 instead of the full path, but I couldn't get it to work. Environment is at the bottom.
>
> The only other thing I wonder about is why the linker is being called with -nostdlib.
>
> Thanks . . .
>
> Dan
> ------ Cut here ---------
> g++ -shared -nostdlib -Wl,-i -m64 -L/usr/local/KDE/support/lib -L/usr/local/KDE/3.5.7/lib -L/cadappl/gcc/3.4.3/gcc/lib/sparcv9 -L/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9 -L/usr/sfw/lib/64 -L/usr/openwin/lib/64 -L/home/rawsond/.caddir/SunOS_5.10/cadlib -Wl,-R/usr/local/KDE/support/lib:/usr/local/KDE/3.5.7/lib:/cadappl/gcc/3.4.3/gcc/lib/sparcv9:/usr/sfw/lib/64:/usr/openwin/lib/64 -mcpu=v9 -mtune=ultrasparc -mv8plus -m64 -Wl,-i -m64 -Wl,-R/usr/local/KDE/support/lib:/usr/local/KDE/3.5.7/lib:/cadappl/gcc/3.4.3/gcc/lib/sparcv9:/usr/sfw/lib/64:/usr/openwin/lib/64 -Wno-long-long -Wundef -Wall -W -Wpointer-arith -O2 -O3 -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION /home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9/crti.o /usr/ccs/lib/sparcv9/values-Xa.o /home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3
/s
> parcv9/crtbegin.o .libs/fakes.o .libs/vsnprintf.o .libs/libkdecore_la.all_cpp.o .libs/libkdecore.lax/libklmalloc.a/malloc.o .libs/libkdecore.lax/libkdecorenetwork.a/libkdecorenetwork_la.all_cpp.o .libs/libkdecore.lax/libkdesvgicons.a/libkdesvgicons_la.all_cpp.o .libs/libkdecore.lax/libltdlc.a/ltdl.o -Wl,-R -Wl,/usr/local/KDE/3.5.7/lib -Wl,-R -Wl,/usr/local/KDE/support/lib -Wl,-R -Wl,/cadappl/gcc/3.4.3/gcc/lib/sparcv9 -Wl,-R -Wl,/home/rawsond/.caddir/SunOS_5.10/cadlib -L/usr/openwin/lib/sparcv9 -L/usr/local/KDE/support/lib -L/usr/local/KDE/3.5.7/lib -L/cadappl/gcc/3.4.3/gcc/lib/sparcv9 -L/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9 -L/usr/sfw/lib/64 -L/usr/openwin/lib/64 -L/home/rawsond/.caddir/SunOS_5.10/cadlib -L/usr/local/tploegma/gcc.3.4.3/build-3.4.3/sparc-sun-solaris2.10/sparcv9/libstdc++-v3/src -L/usr/local/tploegma/gcc.3.4.3/build-3.4.3/sparc-sun-solaris2.10/sparcv9/libstdc++-v3/src/.libs -L/usr/local/tploegma/gcc.3.4.3/build-3.4.3/gcc/spa
rc
> v9 -L/usr/local/tploegma/gcc.3.4.3/build-3.4.3/gcc ../dcop/.libs/libDCOP.so /usr/local/KDE/support/lib/libart_lgpl_2.so /usr/local/KDE/support/lib/libidn.so ../kdefx/.libs/libkdefx.so /usr/local/KDE/support/lib/libqt-mt.so /usr/local/KDE/support/lib/libjpeg.so -lGL -lXmu -lXft -lfreetype -lfontconfig -lresolv -ldl -lrt -lpng -lz -lXext -lX11 -lsocket -lnsl -lSM -lICE -lpthread -lXrender -L/home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9 -L/home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3 -L/home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc -L/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3 -L/usr/ccs/bin/sparcv9 -L/usr/ccs/bin -L/usr/ccs/lib/sparcv9 -L/usr/ccs/lib -L/home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../sparcv9 -L/home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/../../.. -L/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../../sparcv9 -L/cadappl/g
cc
> /3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/../../.. -L/lib/sparcv9 -L/usr/lib/sparcv9 /cadappl/gcc/3.4.3/gcc/lib/sparcv9/libstdc++.so -lm -lgcc_s_sparcv9 /home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9/crtend.o /home/cadappl/gcc/3.4.3/gcc/bin/../lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9/crtn.o -Wl,-h -Wl,libkdecore.so.4 -o .libs/libkdecore.so.4.2.0
> ------------- Cut here ------------
>
> Environment:
> CFLAGS='-mcpu=v9 -mtune=ultrasparc -mv8plus -m64 -O3 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__'
> CPPFLAGS='-I/usr/local/KDE/3.5.7/include -I/usr/local/KDE/support/gnupg/include -I/usr/local/KDE/support/include -I/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/include -I/cadappl/gcc/3.4.3/gcc/include/c++/3.4.3 -I/cadappl/python/2.3/include/python2.3 -I/usr/sfw/include -I/usr/openwin/include'
> CXX=g++
> CXXFLAGS='-mcpu=v9 -mtune=ultrasparc -mv8plus -m64 -O3 -D__C99FEATURES__'
> LDFLAGS='-Wl,-i -m64 -L/usr/local/KDE/support/lib -L/usr/local/KDE/3.5.7/lib -L/cadappl/gcc/3.4.3/gcc/lib/sparcv9 -L/cadappl/gcc/3.4.3/gcc/lib/gcc/sparc-sun-solaris2.10/3.4.3/sparcv9 -L/usr/sfw/lib/64 -L/usr/openwin/lib/64 -L/home/rawsond/.caddir/SunOS_5.10/cadlib -Wl,-R/usr/local/KDE/support/lib:/usr/local/KDE/3.5.7/lib:/cadappl/gcc/3.4.3/gcc/lib/sparcv9:/usr/sfw/lib/64:/usr/openwin/lib/64'
>
Dan,
here are the only link-commands where the art_lgpl_2 lib is used ?!
/bin/bash ../libtool --silent --tag=CXX --mode=link g++ -pipe -mcpu=v9
-mtune=ultrasparc -mv8plus -Wa,-xarch=v9a -mvis -m64 -Wno-long-long -Wundef
-Wall -W -Wpointer-arith -O2 -O3 -D__C99FEATURES__ -Wno-non-virtual-dtor
-fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE
-DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -Wl,-i -m64
-L/usr/local/sparcv9/gnupg/lib -L/usr/local/sparcv9/kde-3.5.7/lib
-L/usr/local/sparcv9/X11R7.2/lib -L/usr/local/sparcv9/lib
-L/usr/local/sparcv9/gcc-4.2.0/lib/sparcv9
-L/usr/local/sparcv9/gcc-4.2.0/lib/gcc/sparc-sun-solaris2.10/4.2.0/sparcv9
-L/usr/sfw/lib/64 -L/usr/openwin/lib/64 -Wl,-R
-Wl,/usr/local/sparcv9/gnupg/lib:/usr/local/sparcv9/kde-3.5.7/lib:/usr/local/sparcv9/X11R7.2/lib:/usr/local/sparcv9/lib:/usr/local/sparcv9/teTeX-3.0/lib:/usr/local/sparcv9/gcc-4.2.0/lib/sparcv9:/usr/sfw/lib/64:/usr/openwin/lib/64
-o libkdecore.la -rpath /usr/local/sparcv9/kde-3.5.7/lib
-L/scratch/local-sw-tmp/kdesvn/build/qt-copy/lib -R
/usr/local/sparcv9/kde-3.5.7/lib -R /usr/local/sparcv9/kde-3.5.7/lib -R
/scratch/local-sw-tmp/kdesvn/build/qt-copy/lib -R /usr/local/sparcv9/X11R7.2/lib
-R /usr/local/sparcv9/lib -L/usr/local/sparcv9/X11R7.2/lib
-L/usr/local/sparcv9/lib -version-info 6:0:2 -no-undefined fakes.lo
vsnprintf.lo libkdecore_la.all_cpp.lo malloc/libklmalloc.la
network/libkdecorenetwork.la svgicons/libkdesvgicons.la ../dcop/libDCOP.la
../libltdl/libltdlc.la -lXext -lresolv -L/usr/local/sparcv9/lib -lart_lgpl_2
-lm -lidn ../kdefx/libkdefx.la
in kdelibs/kdecore
/bin/bash ../libtool --silent --tag=CXX --mode=link g++ -pipe -mcpu=v9
-mtune=ultrasparc -mv8plus -Wa,-xarch=v9a -mvis -m64 -Wno-long-long -Wundef
-Wall -W -Wpointer-arith -O2 -O3 -D__C99FEATURES__ -Wno-non-virtual-dtor
-fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE
-DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -Wl,-i -m64
-L/usr/local/sparcv9/gnupg/lib -L/usr/local/sparcv9/kde-3.5.7/lib
-L/usr/local/sparcv9/X11R7.2/lib -L/usr/local/sparcv9/lib
-L/usr/local/sparcv9/gcc-4.2.0/lib/sparcv9
-L/usr/local/sparcv9/gcc-4.2.0/lib/gcc/sparc-sun-solaris2.10/4.2.0/sparcv9
-L/usr/sfw/lib/64 -L/usr/openwin/lib/64 -Wl,-R
-Wl,/usr/local/sparcv9/gnupg/lib:/usr/local/sparcv9/kde-3.5.7/lib:/usr/local/sparcv9/X11R7.2/lib:/usr/local/sparcv9/lib:/usr/local/sparcv9/teTeX-3.0/lib:/usr/local/sparcv9/gcc-4.2.0/lib/sparcv9:/usr/sfw/lib/64:/usr/openwin/lib/64
-o ksvgtopng -R /usr/local/sparcv9/kde-3.5.7/lib -R
/usr/local/sparcv9/kde-3.5.7/lib -R
/scratch/local-sw-tmp/kdesvn/build/qt-copy/lib -R /usr/local/sparcv9/X11R7.2/lib
-R /usr/local/sparcv9/lib -L/usr/local/sparcv9/kde-3.5.7/lib
-L/scratch/local-sw-tmp/kdesvn/build/qt-copy/lib
-L/usr/local/sparcv9/X11R7.2/lib -L/usr/local/sparcv9/lib ksvgtopng.o
-L/usr/local/sparcv9/lib -lart_lgpl_2 -lm ../kdecore/libkdecore.la
../kdecore/svgicons/libkdesvgicons.la
in kdelibs/pics
Did you use the SHELL=/bin/bash Environment? You may also do some adjustments
with libtool for 64-bit development. I think you should better use the 32-bit
environment, this simplifies something!
Hope this helps,
Michael
More information about the kde-solaris
mailing list