ForumKDE-3.5 compilieren: Alles läuft glatt…nur keine Pixmaps ???
Ottfried Meyer – Sonntag, 22. Januar 2006 21:05 Uhr

Hallo,

ich habe mir ein Script zum Kompilieren der KDE-Sourcen gebaut,
welches bis auf unbedeutende Zicken seit KDE-3.3.x-Zeiten seinen
Dienst tut (im Anhang).

Mit diesem Script habe ich auch die Quellen der KDE-3.5-Archive
compiliert (gcc 4.02). Alles lief glatt.

Nun habe ich ein vollständig “funktionsfähiges” KDE mit dem kleinen
“Schönheitsfehler”, dass nicht eine Pixmap/Icon zu sehen ist.

Pixmaps selber werden angezeigt, solange KDE nicht involviert ist
( z.B. beim Aufruf von qtconfig). Es ist also nicht das Problem einer
fehlenden Library aus den unteren Schichten.

Als Fehlermeldung werden fehlende Mime-Types angezeigt.

Wenn jemand mir sagen könnte, was da wohl schiefgegangen sein könnte,
wäre ich sehr dankbar und könnte endlich mein neues Rootfilesystem
fertigstellen.

Vielen Dank für jeden Tip im Voraus !
mcc

KDE-Compilierscript
#!/bin/bash
#
#
#

set -e

#
#
#
# Total runtime about seven hours !
# ———————————

# Set correct version information
#
export CC=gcc
export KDENEWVERSION=3.4.3
export ARTSNEWVERSION=1.4.3
export KDENEWDEVELOPVERSION=3.2.3
export KDEFOLDER=kde343

# Select what packets to be compiled in
# (set it explictely to “false” if not wanted !!!)
#
export COMPILEARTS=false
export COMPILEKDELIBS=false
export COMPILEKDEBASE=false
export COMPILEKDEADMIN=false
export COMPILEKDEBINDINGS=false
export COMPILEKDEEDU=false
export COMPILEKDEGAMES=false
export COMPILEKDEGRAPHICS=false
export COMPILEKDEMULTIMEDIA=false
export COMPILEKDENETWORK=false
export COMPILEKDEPIM=false
export COMPILEKDESDK=false
export COMPILEKDEUTILS=false
export COMPILEKDEWEBDEV=false
export COMPILEKDEARTWORK=false
export COMPILEKDEADDONS=false
export COMPILEKDEDEVELOP=false
export COMPILEKDEACCESSIBILITY=false
export COMPILEKDETOYS=false

export COMPILEARTS=true
export COMPILEKDELIBS=true
export COMPILEKDEBASE=true
export COMPILEKDEADMIN=true
export COMPILEKDEBINDINGS=true
export COMPILEKDEEDU=true
export COMPILEKDEGAMES=true
export COMPILEKDEGRAPHICS=true
export COMPILEKDEMULTIMEDIA=true
export COMPILEKDENETWORK=true
export COMPILEKDEPIM=true
export COMPILEKDESDK=true
export COMPILEKDEUTILS=true
export COMPILEKDEWEBDEV=true
export COMPILEKDEARTWORK=true
export COMPILEKDEADDONS=true
export COMPILEKDEDEVELOP=true
export COMPILEKDEACCESSIBILITY=true
export COMPILEKDETOYS=true

### EXCLUDE NOTORIOUS FALSY PACKAGES !
#
# kbabel: problems with flex
# kstars: do not compile on gcc 3.4.0 (well on gcc-3.3.3)
# kpovmodeller: do not compile on gcc 3.4.0 (well on gcc-3.3.3)
# umbrello: general compile problems with both gcc versions
# ksim: general compile problems with both gcc versions
#

# export DO_NOT_COMPILE=”kbabel kstars kpovmodeler umbrello ksim”
export DO_NOT_COMPILE=”kpdf kspell kbabel umbrello ksim dcoppython python noatun”

# ———————————————————————————————————————————————————————-
# NO END USER SERVICEABLE PARTS BEYOND THIS POINTR
# ———————————————————————————————————————————————————————-
#export CFLAGS=’-fforce-addr -fomit-frame-pointer -frerun-cse-after-loop’
#export CXXFLAGS=’-fforce-addr -fomit-frame-pointer -frerun-cse-after-loop’

export PATH=”/opt/$KDEFOLDER/bin:/opt/qt/bin:$PATH”
export CONFIGURESTRNGA=”–without-java –with-qt-dir=/opt/qt –prefix=/opt/$KDEFOLDER –disable-debug –disable-dependency-tracking –with-shadow”
export CONFIGURESTRNGB=”–without-java –with-qt-dir=/opt/qt –prefix=/opt/$KDEFOLDER –disable-debug –disable-dependency-tracking”

## if [ -d /opt/$KDEFOLDER ]
## then
## if COMPILEARTS && COMPILEKDELIBS && COMPILEKDEBASE && COMPILEKDEADMIN && COMPILEKDEBINDINGS && COMPILEKDEEDU && COMPILEKDEGAMES && COMPILEKDEGRAPHICS && COMPILEKDEMULT
IMEDIA && COMPILEKDENETWORK && COMPILEKDEPIM && COMPILEKDESDK && COMPILEKDEUTILS && COMPILEKDEWEBDEV && COMPILEKDEARTWORK && COMPILEKDEADDONS && COMPILEKDEDEVELOP && COMPILEKD
EACCESSIBILITY && COMPILEKDETOYS
## then
## echo “KDE $KDENEWVERSION was already installed before!”
## echo “Aborting…”
## exit 0
## fi
## fi

if [ ! -f ./MAKELOG ]
then
echo “There is no MAKELOG process running!”
echo “Aborting…”
exit 0
fi

## hack ! if no xdelta files available…
if false
then
#——————————————————-
if [ ! -d ./back ]
then
mkdir ./back
fi

if [ ! -d ./back ]
then

mkdir ./back

echo “Patching up to version $KDENEWVERSION…”
for i in $(ls *.tar.bz2)
do
echo
echo -n “…working on $i to prepare “

unset fna
unset fnb
unset fnc
fna=$(basename $i .bz2)
fnb=$(basename $i .tar.bz2)
fnc=`echo “$fnb” | sed ‘s/-[0-9.]*//g’`

bzip2 -d $i

if [ fnc = “arts” ]
then
xdelta patch ${fnb}*.xdelta $fna arts-$ARTSNEWVERSION.tar
bzip2 arts-$ARTSNEWVERSION.tar
echo -n ” arts-$ARTSNEWVERSION.tar.bz2…”
cp arts-$ARTSNEWVERSION.tar.bz2 ./back/.

elif [ fnc = “kdevelop” ]
then
xdelta patch ${fnb}*.xdelta $fna kdevelop-$KDENEWDEVELOPVERSION.tar
bzip2 kdevelop-$KDENEWDEVELOPVERSION.tar
cp kdevelop-$KDENEWDEVELOPVERSION.tar.bz2 ./back/.
else

xdelta patch ${fnb}*.xdelta $fna $fnc-$KDENEWVERSION.tar
bzip2 $fnc-$KDENEWVERSION.tar
cp $fnc-$KDENEWVERSION.tar.bz2 ./back/.
fi

mv ${fnb}*.xdelta ./back/.
bzip2 $fna
mv $i ./back/.

echo “done.”

done
fi

#——————————————————-
fi

#echo “Making of qt-x11-free-$KDENEWVERSION”
#cd qt-x11-free-$KDENEWVERSION/.; ./configure -system-zlib -qt-gif -system-libpng -system-libjpeg -plugin-imgfmt-mng -thread -no-stl \
#-no-xinerama -no-g++-exceptions -prefix /opt/qt && make && make install && sudo ldconfig && cd ..

[ ! -d arts-$ARTSNEWVERSION ] || export COMPILEARTS=false
[ ! -d kdelibs-$KDENEWVERSION ] || export COMPILEKDELIBS=false
[ ! -d kdebase-$KDENEWVERSION ] || export COMPILEKDEBASE=false
[ ! -d kdeadmin-$KDENEWVERSION ] || export COMPILEKDEADMIN=false
[ ! -d kdebindings-$KDENEWVERSION ] || export COMPILEKDEBINDINGS=false
[ ! -d kdeedu-$KDENEWVERSION ] || export COMPILEKDEEDU=false
[ ! -d kdegames-$KDENEWVERSION ] || export COMPILEKDEGAMES=false
[ ! -d kdegraphics-$KDENEWVERSION ] || export COMPILEKDEGRAPHICS=false
[ ! -d kdemultimedia-$KDENEWVERSION ] || export COMPILEKDEMULTIMEDIA=false
[ ! -d kdenetwork-$KDENEWVERSION ] || export COMPILEKDENETWORK=false
[ ! -d kdepim-$KDENEWVERSION ] || export COMPILEKDEPIM=false
[ ! -d kdesdk-$KDENEWVERSION ] || export COMPILEKDESDK=false
[ ! -d kdeutils-$KDENEWVERSION ] || export COMPILEKDEUTILS=false
[ ! -d kdewebdev-$KDENEWVERSION ] || export COMPILEKDEWEBDEV=false
[ ! -d kdeartwork-$KDENEWVERSION ] || export COMPILEKDEARTWORK=false
[ ! -d kdeaddons-$KDENEWVERSION ] || export COMPILEKDEADDONS=false
[ ! -d kdedevelop-$KDENEWDEVELOPVERSION ] || export COMPILEKDEDEVELOP=false
[ ! -d kdeaccessibility-$KDENEWVERSION ] || export COMPILEKDEACCESSIBILITY=false
[ ! -d kdetoys-$KDENEWVERSION ] || export COMPILEKDETOYS=false

if [ $COMPILEARTS = true ]
then
[ -d arts-${ARTSNEWVERSION} ] || /usr/bin/time -v aunpack arts-${ARTSNEWVERSION}.tar.*
echo “Making of arts-${ARTSNEWVERSION} at `date`”
cd arts-${ARTSNEWVERSION}/.
proj=$(basename `pwd`)
./configure –enable-alsa ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDELIBS = true ]
then
[ -d kdelibs-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdelibs-${KDENEWVERSION}.tar.*
echo “Making of kdelibs-${KDENEWVERSION} at `date`”
cd kdelibs-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEBASE = true ]
then
[ -d kdebase-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdebase-${KDENEWVERSION}.tar.*
echo “Making of kdebase-${KDENEWVERSION} at `date`”
cd kdebase-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGA} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEADMIN = true ]
then
[ -d kdeadmin-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeadmin-${KDENEWVERSION}.tar.*
echo “Making of kdeadmin-${KDENEWVERSION} at `date`”
cd kdeadmin-${KDENEWVERSION}/.
proj=$(basename `pwd`)

./configure ${CONFIGURESTRNGA} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEBINDINGS = true ]
then
[ -d kdebindings-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdebindings-${KDENEWVERSION}.tar.*
echo “Making of kdebindings-${KDENEWVERSION} at `date`”
cd kdebindings-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEEDU = true ]
then
[ -d kdeedu-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeedu-${KDENEWVERSION}.tar.*
echo “Making of kdeedu-${KDENEWVERSION} at `date`”
cd kdeedu-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEGAMES = true ]
then
[ -d kdegames-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdegames-${KDENEWVERSION}.tar.*
echo “Making of kdegames-${KDENEWVERSION} at `date`”
cd kdegames-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEGRAPHICS = true ]
then
[ -d kdegraphics-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdegraphics-${KDENEWVERSION}.tar.*
echo “Making of kdegraphics-${KDENEWVERSION} at `date`”
cd kdegraphics-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEMULTIMEDIA = true ]
then
[ -d kdemultimedia-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdemultimedia-${KDENEWVERSION}.tar.*
echo “Making of kdemultimedia-${KDENEWVERSION} at `date`”
cd kdemultimedia-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} –with-arts-alsa && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDENETWORK = true ]
then
[ -d kdenetwork-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdenetwork-${KDENEWVERSION}.tar.*
echo “Making of kdenetwork-${KDENEWVERSION} at `date`”
cd kdenetwork-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEPIM = true ]
then
[ -d kdepim-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdepim-${KDENEWVERSION}.tar.*
echo “Making of kdepim-${KDENEWVERSION} at `date`”
cd kdepim-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDESDK = true ]
then
[ -d kdesdk-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdesdk-${KDENEWVERSION}.tar.*
echo “Making of kdesdk-${KDENEWVERSION} at `date`”
cd kdesdk-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEUTILS = true ]
then
[ -d kdeutils-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeutils-${KDENEWVERSION}.tar.*
echo “Making of kdeutils-${KDENEWVERSION} at `date`”
cd kdeutils-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEWEBDEV = true ]
then
[ -d kdewebdev-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdewebdev-${KDENEWVERSION}.tar.*
echo “kdewebdev-${KDENEWVERSION} at `date`”
cd kdewebdev-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEARTWORK = true ]
then
[ -d kdeartwork-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeartwork-${KDENEWVERSION}.tar.*
echo “Making of kdeartwork-${KDENEWVERSION} at `date`”
cd kdeartwork-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEADDONS = true ]
then
[ -d kdeaddons-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeaddons-${KDENEWVERSION}.tar.*
echo “Making of kdeaddons-${KDENEWVERSION} at `date`”
cd kdeaddons-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEDEVELOP = true ]
then
[ -d kdedevelop-${KDENEWDEVELOPVERSION} ] || /usr/bin/time -v aunpack kdevelop-${KDENEWDEVELOPVERSION}.tar.*
echo “Making of kdedevelop-${KDENEWDEVELOPVERSION} at `date`”
cd kdevelop-${KDENEWDEVELOPVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDEACCESSIBILITY = true ]
then
[ -d kdeaccessibility-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdeaccessibility-${KDENEWVERSION}.tar.*
echo “Making of kdeaccessibility-${KDENEWVERSION} at `date`”
cd kdeaccessibility-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

if [ $COMPILEKDETOYS = true ]
then
[ -d kdetoys-${KDENEWVERSION} ] || /usr/bin/time -v aunpack kdetoys-${KDENEWVERSION}.tar.*
echo “Making of kdetoys-${KDENEWVERSION} at `date`”
cd kdetoys-${KDENEWVERSION}/.
proj=$(basename `pwd`)
./configure ${CONFIGURESTRNGB} && /usr/bin/time -v make && /usr/bin/time -v sudo paco -lp $proj “make install” && sudo ldconfig && cd ..
fi

echo
echo
echo “ALL DONE”
echo “Finished build of KDE ${KDENEWVERSION} at `date`”
echo

2 Antworten
man-draker – Sonntag, 22. Januar 2006 21:36 Uhr

Was hindert dich Konstruct zu verwenden?

Ottfried Meyer – Montag, 23. Januar 2006 03:44 Uhr

Hi,

…mich “hindert” nichts daran…nur mein ansonsten funktionierendes
Script hatte ich schon zusammengehackt, bevor ich etwas von Konstruct
kannte… :O)

Trotzdem danke für den -Konstruct-iven Tipp ! :O))

mcc

Florian E.J. Fruth – Montag, 23. Januar 2006 00:33 Uhr

hi,
i installed kde on a sparc/solaris system once and ran into a similar problem (i couldn’t read jpeg-files inside kde) – so perhaps your problem is the same that i have: try to set the library path for your qt-libraries. i installed it as user in /home/fejf/install – replace it with your path (should be /opt)

run qtconfig and add the following library paths for jpeg and other stuff support:

/home/fejf/install/plugins, /home/fejf/install/bin, /home/fejf/install/lib/kde3/plugins

add the following to your startkde script

export PATH=”${PATH}:/home/fejf/install/bin”
export LD_LIBRARY_PATH=”${LD_LIBRARY_PATH}:/home/fejf/install/lib:/progs/devel/gcc/gcc33/lib:/usr/openwin/lib”
/home/fejf/install/bin/startkde

Ottfried Meyer – Donnerstag, 26. Januar 2006 05:24 Uhr

That fixes my problems !

Thanks a lot,
mcc

Florian E.J. Fruth – Mittwoch, 01. Februar 2006 12:53 Uhr

mir ist grad aufgefallen: wieso zum henker antworte ich in einem deutschen forum auf englisch? :P aber war ja scheinbar kein problem ;)
fejf