Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/07/2006, à 11:14

fredbezies

[Tutoriel] Comment faire son propre "Swiftfox" ;)

Bonjour.

Certaines personnes sur le forum sont des fans de Swiftfox. Voici donc un petit tutoriel pour pondre votre swiftfox à vous.

Ingrédients

1) Une ubuntu (breezy ou dapper)
2) les dépots universe / multiverse activé dans Synaptic
3) le code source de firefox 1.5.0.x (x = 4 au moment où je rédige ce rapide tutoriel)
4) de la patience wink

1ière étape : mise en place de l'environnement de compilation

Attendez, ne fuyez pas ! smile

Soit dans Synaptic, soit dans le terminal, on commence par récupérer l'essentiel : make et compagnie.

Donc, il faut récupérer le paquet "build-essential". Dans le terminal (et oui, je suis un gros geek mais rasé), entrons :

sudo apt-get install build-essential

On va aussi récupérer les paquets de développement pour GTK2, donc le paquet "libgtk2.0-dev". Dans le terminal :

sudo apt-get install libgtk2.0-dev"

On récupère aussi les fichiers de développements pour la bibliothèque xft (libxft-dev) et pkg-config. Vous connaissez le principe ? Donc je pense que c'est inutile de répéter encore une fois wink

2ième étape : récupération et configuration du code source

Y a encore des survivants ?

Récupérons le code source de firefox. (dans notre exemple, le 1.5.0.4)

http://ftp.mozilla.org/pub/mozilla.org/ … .4/source/

Dans le terminal, désarchivons le code source en entrant :

tar xvfj firefox-1.5.0.4-source.tar.bz2

Entrons dans le répertoire nouvellement créé (avec un cd mozilla).

Maintenant, nous allons passer à la partie ennuyeuse, le fichier .mozconfig.

On va rester simple. On va récupérer le .mozconfig correspondant à votre machine. (http://getswiftfox.com/releases.htm)

Quand on clique sur la ligne .mozconfig, on accède au code.

Lancez gedit, et copiez / collez le contenu.

Sauvez le fichier en .mozconfig dans le répertoire mozilla nouvellement créé.

3ième étape : compilation du bouzin

Dans le terminal, commençons par entrer :

make -f client.mk depend

Puis, une fois les dépendances créées :

make -f client.mk build

L'opération est assez longue (1 heure sur mon Pentium 4 - 2,6 ghz / 1 Go de ram)

Si tout se passe bien, il ne vous restera plus qu'à créer l'archive :

make -C xpinstall/packager

Et un fichier en .tar.bz2 vous attendra dans le répertoire mozilla/dist/

Attention : vous aurez les icones "ubuntu" pour votre "swiftfox".

S'il y a le moindre problème en suivant ce petit tutoriel, envoyez moi un message en perso, j'y répondrais dès que possible wink

Bon dimanche !

#2 Le 09/07/2006, à 18:00

Gounlaf

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

Si j'ai bien tout suivi, ca fera un Firefox compiler avec nos parametres, donc beaucoup plus rapide en execution (d'apres les autres topics), c'est bien cela ?

Hors ligne

#3 Le 09/07/2006, à 18:38

Link31

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

Il sera optimisé pour ton type de processeur. Donc en principe plus rapide.
Il y a aussi possibilité de ne pas compiler certaines fonctions, ce qui accélère encore l'exécution.

Enfin, il est possible de demander au compilateur d'optimiser le code lui-même. L'optimisation est habituellement -O2, mais il y a peut-être (pas testé) un moyen de compiler Firefox en -O3. L'optimisation du code influe sur la taille de l'exécutable et sur la vitesse d'exécution (le compromis des deux entraînant parfois une baisse de la vitesse au final).

Hors ligne

#4 Le 09/07/2006, à 18:46

Smarter

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

Mais si Swiftfox propose déja les paquets tout prêts, quel est l'interêt de les refaires avec les même paramètres? Ce qui aurait été intéressant c'est de détaillé les options de ce .mozconfig et les trucs inutiles qu'on peut enlever

Hors ligne

#5 Le 09/07/2006, à 20:20

fredbezies

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

Link31 : swiftfox est déjà compilé en -O3.

Smarter : 10 minutes, et tu seras comblé wink

L'intérêt ? Savoir le faire au cas où...

Gounlaf : oui.

#6 Le 09/07/2006, à 20:25

fredbezies

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

#
# See http://www.mozilla.org/build/ for build instructions.
#

BUILD_OFFICIAL=1
export BUILD_OFFICIAL
mk_add_options BUILD_OFFICIAL=1

# Options for client.mk.
mk_add_options MOZ_CO_PROJECT=browser

export CHOST="i686-pc-linux-gnu"
export CFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"
export CXXFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"
export CPPFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"

# Options for 'configure' (same as command-line options).
ac_add_options --with-pthreads
ac_add_options --enable-application=browser
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --with-distribution-id=Swiftfox
ac_add_options --disable-freetype2
ac_add_options --enable-single-profile
ac_add_options --enable-extensions=default,xforms,schema-validation
ac_add_options --disable-installer
ac_add_options --disable-tests
ac_add_options --enable-optimize="-O3 -march=pentium4 -freorder-blocks -fno-reorder-functions -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"
ac_add_options --disable-shared
ac_add_options --enable-static
ac_add_options --disable-profilesharing
ac_add_options --disable-debug
ac_add_options --enable-xft
ac_add_options --enable-crypto
ac_add_options --enable-svg
ac_add_options --enable-canvas
ac_add_options --enable-update-packaging

Bon, j'ai pris le .mozconfig pour pentium4, mais le principe est le même pour les autres.

Inutile :

export CHOST="i686-pc-linux-gnu"
export CFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"
export CXXFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"
export CPPFLAGS="-O3 -march=pentium4 -pipe -fomit-frame-pointer -msse2 -mmmx -mfpmath=sse -D_FORTIFY_SOURCE=2"

Etant donné que la ligne d'optimisation déclare cela.

ac_add_options --enable-extensions=default,xforms,schema-validation

Pourquoi xforms alors qu'il n'est pas compilé officiellement par mozilla ? Idem pour schema-validation ?

un ac_add_options --enable-extensions=default suffit largement.

ac_add_options --enable-crypto

Activé par défaut depuis le début (ou presque du développement de gecko 1.8 donc fx 1.5). Peut être viré sans encombre.

BUILD_OFFICIAL=1
export BUILD_OFFICIAL

On peut le remplace par un export BUILD_OFFICIAL=1 de bon aloi wink

Voila, en gros ce qu'on peut dire !

Dernière modification par fredbezies (Le 09/07/2006, à 20:25)

#7 Le 09/07/2006, à 22:14

Gounlaf

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

make[4]: *** [firefox-bin] Erreur 1
make[4]: quittant le répertoire « /home/gounlaf/mozilla/browser/app »
make[3]: *** [libs] Erreur 2
make[3]: quittant le répertoire « /home/gounlaf/mozilla/browser »
make[2]: *** [tier_99] Erreur 2
make[2]: quittant le répertoire « /home/gounlaf/mozilla »
make[1]: *** [default] Erreur 2
make[1]: quittant le répertoire « /home/gounlaf/mozilla »
make: *** [build] Erreur 2

J'ai ca, juste a la fin de la compil :s
Du coup jpeu pas faire l'archive :s

Dernière modification par Gounlaf (Le 09/07/2006, à 22:14)

Hors ligne

#8 Le 09/07/2006, à 23:26

Link31

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

@Gounlaf : il faut donner l'erreur qui est avant, très probablement quelque chose du genre : xxx.h : no such file or directory. Ensuite il faut rechercher le xxx.h sur packages.ubuntu.com et installer le paquet qui correspond.

Hors ligne

#9 Le 09/07/2006, à 23:29

Gounlaf

Re : [Tutoriel] Comment faire son propre "Swiftfox" ;)

Erf, pas moyen de loguer tout ca ? Pck jvais devoir relancer la compil ... j'ai fermer le terminal xD

Hors ligne