[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Dubbio ottimizzazione...



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

*** on Thursday 27 January 2005 08:49, Legolas wrote:

> > Questo perche` alcuni pacchetti (tra cui sicuramente binutils,
> > glibc e gcc, e mplayer) hanno i loro flags "hardcoded" nei propri
> > file sorgenti.

> ma questo non e' palesemente in constrasto con tutti quelli che
> dicono (io compreso) che apt-build riesce a ricompilare bene e senza
> errori le glibc?
> forse mi sto' perdendo qualcosa...

nono, per carita`!!
Premessa: non sono un debianista ma siccome Debian mi attira (ho 
installato per studio nanoLinux IV di Giacomini, che sempre Debian e`) 
seguo la lista per imparare; solo che non conosco ancora gli strumenti 
Debian e quindi non posso giudicare.

Mi sono rifatto solamente alle mie esperienze di "scratcharo", e 
seguendo per piu` di un anno le ml relative a LFS, e compilando 
quotidianamente, posso dire che le ottimizzazioni su Glibc sono 
caldamente sconsigliate; ho visto gente che ha avuto problemi nel 
compilare anche pacchetti banali (ex: sed, tar, coreutils..) proprio 
per questo motivo. 
Sempre dal libro LFS, permettimi di riportare:

"Installation of Glibc 
This package is known to have issues when its default optimization flags 
(including the -march and -mcpu options) are changed. If any 
environment variables that override default optimizations have been 
defined, such as CFLAGS and CXXFLAGS, unset them when building Glibc."

E questo e` un fatto.

Poi pero` leggendo la doc del pacchetto (file INSTALL) ho visto anche 
che le flags _non_ vengono sconsigliate, e se ti puo` servire  per 
aggirare il tuo problema originario, un estratto dalle FAQ:

***
1.18.	How can I compile on my fast ix86 machine a working libc for my 
slow i386?  After installing libc, programs abort with "Illegal 
instruction".

{AJ} glibc and gcc might generate some instructions on your machine that
aren't available on i386.  You've got to tell glibc that you're  
configuring for i386 with adding i386 as your machine, for example:

	../configure --prefix=/usr i386-pc-linux-gnu

And you need to tell gcc to only generate i386 code, just add 
`-mcpu=i386' (just -m386 doesn't work) to your CFLAGS.

{UD} This applies not only to the i386.  Compiling on a i686 for any 
older model will also fail if the above  methods are not used.
***

Che sembra contrastare quello che dicono su LFS.

A questo punto non so nella teoria a chi dare ragione; nella pratica 
seguo LFS perche` lo conosco bene e non ho mai avuto problemi in questo 
senso, poi decidi tu, io non mi prendo responsabilita`.. ;-)))

Considerazione: personalmente trovo che ottimizzare pacchetti così 
"sensibili" non porti grandi giovamenti alle prestazioni e sia 
rischioso, ritengo invece che le applicazioni ottimizzabili "alla 
morte" siano altre.

Chiedo scusa per la lunghezza, e per non aver chiarito quasi nulla! ;-)

- -- 
Ciao, antonio
MajaGLUG member   http://www.teppisti.it
LinuxFromScratch Compiler #12000 (ServoLinux 2.0)
 
"Prima pagina venti notizie ventun'ingiustizie e lo Stato che fa: si 
costerna, s'indigna, s'impegna poi getta la spugna con gran dignità"
(De Andre`)
gpg-key on www.keyserver.net
 
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFB+LKdLtzY1tJoG8kRAj0VAKCTS09PSpUnuxg5AMlrdIhpnUd49QCePgrX
j41h2XNhsr5ukccl/X7aMWI=
=jMeA
-----END PGP SIGNATURE-----



Reply to: