This blog post has been published on 2010-09-20 and may be out of date.
Heute zeige ich wie du Chromium mit gcc-4.5 bauen kannst und den Browser somit ein wenig optimieren kannst.
Root-Rechte beschaffen…
sudo su
…nun fügen wie die aktuellen Chromium-Quellen in unser System ein:
add-apt-repository ppa:chromium-daily/ppa && apt-get update
(ls -al /etc/apt/sources.list.d/chromium-daily-ppa*)
Optional: Wer nun bereits die aktuelle Chromium-Version installieren möchte, kann dies mit folgendem Befehl bewerkstelligen.
sudo aptitude install chromium-browser chromium-browser-l10n chromium-codecs-ffmpeg-extra
Nun installieren wir einige Liberiers und Werkzeuge um Chromium per gcc-4.5 kompilieren zu können.
aptitude install g++-4.5 hardening-wrapper libbz2-dev lzma-dev libhunspell-dev libsqlite3-dev libxss-dev libgnome-keyring-dev gyp
(ggf. wirst du im laufe der Kompilierung aufgefordert noch weitere Liberiers nach zu installieren)
Als nächstes erstellen wir einen neues Verzeichnis…
cd /usr/src
mkdir chromium
cd chromium
… in diesem Verzeichnis, laden wir mit folgenden Befehlen die aktuellen Chromium-Browser-Quellen.
apt-get source chromium-browser
bzr get https://code.launchpad.net/~chromium-team/chromium-browser/chromium-browser.head
Wechseln nun in folgendes Verzeichnis und kopieren ggf. die neuen Konfigurationen hinzu…
cd chromium-browser-*
cp -pvr ../chromium-browser.head/ .
… nun müssen wir noch einige Änderungen / Optimierungen vornehmen, dazu editieren wir folgende Datei:
(dabei sollte man beachten, dass nicht alle CPUs “SSE2” unterstützen)
vim debian/rules
———————————————————-
54c54
< GYP_DEFINES = disable_sse2=1
—
> #GYP_DEFINES = disable_sse2=1
59a60,62
> # Enable gcc4.5
> GYP_DEFINES=’werror=’
>
119d121
< # Set this to use gcc 4.3 instead of 4.4
122,127d123
<
< ifeq (1/4.4,$(AVOID_GCC_44)/$(CC_VERSION))
< CC := gcc-4.3
< CXX := g++-4.3
< BUILD_ARGS += CC=$(CC) CXX=$(CXX) CC.host=$(CC) CXX.host=$(CXX)
< endif
129,131c125,130
< ifeq (4.4,$(CC_VERSION))
< GYP_DEFINES += no_strict_aliasing=1 gcc_version=44
< endif
—
> # gcc-4.5
> CC := gcc-4.5
> CXX := g++-4.5
> BUILD_ARGS += CC=$(CC) CXX=$(CXX) CC.host=$(CC) CXX.host=$(CXX)
> CFLAGS += -O3
> GYP_DEFINES += no_strict_aliasing=1 gcc_version=45 linux_strip_binary=1 remove_webcore_debug_symbols=1
182c181
< USE_SYSTEM_SQLITE := 0
—
> USE_SYSTEM_SQLITE := 1
186c185
< GYP_DEFINES += use_system_zlib=0
—
> GYP_DEFINES += use_system_zlib=1
192,197c191,206
< use_system_bzip2=1 \
< use_system_libjpeg=1 \
< use_system_libpng=1 \
< use_system_sqlite=$(USE_SYSTEM_SQLITE) \
< use_system_libxml=0 \
< use_system_libxslt=1 \
—
> gcc_version=45 \
> no_strict_aliasing=1 \
> use_system_sqlite=$(USE_SYSTEM_SQLITE) \
> use_system_libxml=0 \
> use_system_libxslt=1 \
> use_system_ffmpeg=1 \
> proprietary_codecs=1 \
> use_system_libjpeg=1 \
> use_system_libxslt=1 \
> use_system_libxml=1 \
> use_system_bzip2=1 \
> use_system_zlib=1 \
> use_system_libpng=1 \
> use_system_yasm=1 \
> use_system_libevent=1 \
> use_system_ssl=0 \
270c279
< rm -f $(subst_files)
—
> rm -f $(subst_files) *.cdbs-config_list
———————————————————-
Als nächstes ändern wir noch folgende Datei…
vim debian/control
———————————————————-
15c15
< g++-4.3 | g++-4.2,
—
> g++-4.5,
———————————————————-
Nun können wir aus diesen Quellen eine neue “.deb”-Datei bauen. :-)
export DEBFULLNAME='chromium-browser';export DEBEMAIL='deine@mail-adresse.de';debuild -i -us -uc
Auf meinem Netbook hat dieser Vorgang zirka 4 Stunden gedauert und schon hat man Chromium neu gebaut ;-) und kann diesen per dpkg installieren.
cd ..
dpkg -i *.deb
Hier noch meine Version: http://drop.io/wbrejzv
Wenn noch jemand Erfahrungen mit dem kompilieren von Programmen hat und mir diesbezüglich (Chromium – Optimierung) noch weitere Tipps geben kann, wäre ich euch sehr dankbar.
PS: Wer Chrom / Chromium unter Windows nutzen möchte, solle sich einmal SRWare Iron anschauen.