[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-devel
Subject: Experience w/ objprelink and qt v3.03, gcc v3.0.4, binutils v2.11.92
From: Sean Pecor <sean () digitalspinner ! com>
Date: 2002-04-23 19:10:01
[Download RAW message or body]
Hello,
I've got my first batch compilation of KDE3 completed. This is with a Pentium
4 1.8ghz, 512mb 800mhz RDRAM. I wanted to make sure I've done this correctly
so I can make accurate comparison notes. My goal is to create a testbed of
multiple compartmentalized compiles of kde and qt for benchmarking purposes.
I'm also working on a bash / dcop script to hammer on particular applications
for my own homebrew benchmark. My successful compilation notes so far are
found at the bottom of this email.
Can someone compare their results with mine regarding the use of objprelink?
Here are some of my countreloc results:
/opt/kde3/lib/libkdecore.so
2757 R_386_32
312 R_386_GLOB_DAT
2458 R_386_JUMP_SLOT
1612 R_386_RELATIVE
/opt/kde3/lib/libkdeui.so
20293 R_386_32
703 R_386_GLOB_DAT
3368 R_386_JUMP_SLOT
3323 R_386_RELATIVE
/opt/kde3/lib/libkonq.so
1893 R_386_32
127 R_386_GLOB_DAT
1155 R_386_JUMP_SLOT
393 R_386_RELATIVE
/usr/lib/qt3.03/lib/libqt-mt.so.3
27281 R_386_32
1520 R_386_GLOB_DAT
7694 R_386_JUMP_SLOT
164 R_386_PC32
11465 R_386_RELATIVE
Does this look about right? I'm not a low level C++ and linking expert so I
thought I'd ask.
Compilation notes:
My cpu specs are Pentium 4 1.8ghz, 512mb 800mhz RDRAM. My platform is Mandrake
8.1 w/ many RPM updates.
After this mass-compile I've noticed that the performance increase is
substantial as compared to the standard Mandrake 8.2 KDE3 RPMs. Things feel
faster, and my work is more fluid and enjoyable with the smaller "opening
application" delays. There are some issues I need to resolve in my case, in
that the Create Image Gallery functionality is gone in Konqueror, and there
is a strange delay sometimes with pasting things from the clipboard (the
application I paste into will sometimes freeze for about 6 seconds, then come
back. As soon as I paste again it works fine though).
1. Compiling QT.
I follow the README.qt-copy instructions. I added some additional steps
because QT3 creates Makefiles that force CFLAGS and CXXFLAGS to "-O2". I
replace "-O2" with my own flags using a brute force sed script:
a) Follow README.qt-copy.
b) From qt3 dir:
export CFLAGS="-pipe -fno-exceptions -Wall -W -fomit-frame-pointer -O3
-malign-double -march=i686 -mcpu=i686 -malign-functions=4 --pipe -fforce-mem
-fforce-addr" && CXXFLAGS=$CFLAGS
find -name "Makefile" -exec ./fudge {} \;
c) Contents of my fudge script in qt3 dir:
#!/bin/bash
sed -e "s|-O2|$CFLAGS|g" $1 > temp
cp temp $1
The sed script above is pretty brute force. You've been warned.
2. Compiling KDE3.
I have all of the KDE modules under a "kdesrc" directory. Here is my "compile"
bash script.
#!/bin/bash
# Set up proper gcc flags.
export CFLAGS="-fomit-frame-pointer -O3 -malign-double -march=i686 \
-mcpu=i686 -malign-functions=4 --pipe -fforce-mem -fforce-addr" \
&& CXXFLAGS=$CFLAGS
# Make sure objprelink (installed in /usr/local/bin) is accessible.
export PATH=$PATH:/usr/local/bin
PACKAGES="arts kdelibs kdebase kdemultimedia kdenetwork kdegraphics kdepim
kdeaddons kdeadmin kdeedu kdegames kdetoys kdeutils kdevelop koffice kdoc
kdeartwork"
for package in $PACKAGES
do
echo "Beginning compilation of $package"
cd $package || exit
make clean
make -f Makefile.cvs
./configure --enable-objprelink --prefix=/opt/kde3 --enable-shadow \
--disable-debug --enable-fast-malloc=full || exit
make || exit
make install || exit
cd ..
done
#End of script
--
Digital Spinner, Inc.
Cutting edge web design and applications development.
http://www.digitalspinner.com
Phone: 802.948.2020
Fax: 802.948.2749
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic