Difference between revisions of "Olena/CompilationHowto"
From LRDE
(Upload olena web site) |
(Add the OlenaMenu on each Olena pages) |
||
Line 1: | Line 1: | ||
+ | {{OlenaMenu}} |
||
+ | |||
En attendant mieux: |
En attendant mieux: |
||
Revision as of 18:41, 24 February 2014
Resources
En attendant mieux:
From: Raphal Poss <raph@lrde.epita.fr> Subject: de la manire d'excuter les tests et de la pertinence qui en dcoule Newsgroups: epita.lrde.olena Date: Sat, 08 Feb 2003 14:46:25 +0100 Organization: EPITA / LRDE http://www.lrde.epita.fr Ce message doit vous laisser ce souvenir : _Redfinissez TOUJOURS la variable d'environnement `CXXFLAGS' avant d'excuter `configure' et surtout `make distcheck'._ Sur sandrock: export CXXFLAGS=`-pipe -march=pentium4 -msse2' Pourquoi ? 1) par dfaut, `configure' y met `-g -O2'. 2) la valeur par dfaut est utilise tout le temps. Les autres flags configurs s'y ajoutent au lieu de les remplacer. 3) ces flags ralentissent la compilation, ou la font plus lente qu'elle pourrait l'tre : avec -g, le compilateur gnre un assembleur et des objets plus gros. Avec `-pipe', les phases de compilations sont paralllises. 3bis) ces flags gnrent du code lent. 4) certains tests ncessitent une optimisation maximale. Pour l'instant, une technique infme aboutit l'excution de `gcc -g -O2 -O3 ...', ce qui aboutit une aberration. Notoirement, le bug avec gcc 2.95 est d l'utilisation de -g et -O3 en conjonction. 4) les tests sont censs prouver la robustesse et la justesse des algorithmes vis--vis des bons et surtout mauvais traitements infligs par le compilateur. Or les traitements les plus altrants sont les optimisations. D'o l'utilit d'optimiser correctement pour tous les tests. Pourquoi export CXXFLAGS=... ; ./configure ; make distcheck au lieu du ./configure CXXFLAGS=... ; make distcheck recommand par Akim et la doc des Autotools ? Parce que les variables indiques sur la ligne de commande de `configure' ne sont pas propages au `configure' lanc rcursivement par `make distcheck'.