El día 17 de noviembre de 2009 20:00, Mario Palomo <[email protected]> escribió:
> Mi pregunta era más sobre la política que se sigue en Debian con respecto a > la versión del compilador y librerías básicas que deben usar los DD > (incluyendo los distintos flags a usar para el compilador: ¿-O2 o -O3?, > ¿-march y otros posibles tuneos? y sobre todo los flags a usar para el caso > de plataformas distintas a la i386 y amd64, como mips y arm, que es donde > suelo trabajar), pero de tu respuesta entiendo que esas decisiones son cosa > de cada DD para cada paquete con el que trabaja. ¿Podría confirmarme esto > algún DD en la lista? No uses -O3, no siempre optimiza más y puede dar problemas con ciertas arquitecturas*. En general, lo conveniente es usar los CFLAGS que se le envían al rules, que habitualmente implican una optimización -O2 Por otra parte, es muy cómodo usar también -Wall para que, al menos, avise de los warnings. Respecto al linker, a mí personalmente me gusta usar como opciones de enlace (LDCONFIG) [0] --no-undefined / -z defs: Para rechazar las referencias que no sean satisfechas por ninguna de las librerías con las que se enlaza, tanto directa como indirectamente, y para resolver todos los símbolos al enlazar. [1] --as-needed: Para eliminar las relaciones de enlace que no estén emparejadas con una relación de uso de las mismas. [1] --no-add-needed: Para asegurarnos de que estamos enlazando eplícitamente todas las librerías que usamos de forma directa desde el código de nuestro programa. [2] -Wl,option pasa algunos parámetros al enlazador. Si option tiene comas, lo separa en opciones múltiples: -Wl,-z,defs -Wl,-as-needed -Wl,--no-undefined -Wl,--no-add-needed Saludos, Miry *: "-O3 is supposed to increase performance, but bigger code might not fit in the cpu cache, which in turns, virtually means a performance drop that is much bigger than any optimization that -O3 might provide." [3] "-O2: A step up from -O1. This is the recommended level of optimization unless you have special needs." "Using -O3 is not recommended for gcc 4.x" [4] [0] http://sourceware.org/binutils/docs-2.16/ld/Options.html [1] http://blog.flameeyes.eu/2008/11/19/relationship-between-as-needed-and-no-undefined-part-1-what-do-they-do [2] http://wiki.debian.org/qa.debian.org/FTBFS#A2009-11-02Packagesfailingbecausebinutils-gold.2BAC8-indirectlinking [3] http://www.linuxforums.org/forum/linux-programming-scripting/118311-gcc-optimisation-o-o1-o2-o3.html [4] http://www.gentoo.org/doc/en/gcc-optimization.xml -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

