[Primipassi] rpm -bb xxxxxx.spec
Sergio Ballestrero
sballestrero@interfree.it
Ven 26 Gen 2001 22:31:38 CET
On Tue, 16 Jan 2001, Marco Santini wrote:
> Supponiamo che io compili col comando 'rpm -bb xxxxxx.spec' ciņ che ho
> installato da un xxxxxx.src.rpm;
> Gli rpm che vengono fuori sono compilati per la mia macchina (per es.
> i686) o per un i386?
> ho guardato man pages e HOW-TO ma non sono stato in grado di capire se
> glielo devo dire io o se fa da solo. Sta di fatto che quello che viene
> fuori č un file xxxxxxx.i386.rpm e questo mi fa pensare che non li abbia
> compilati per il mio i686.
> Il tutto con rpm4 su rh7.
> Grazie,
> Marco.
Premesse:
1) Dopo la 486, le architetture divergono. Su una K6, il codice
ottimizzato per PentiumPro puo' girare piu' lento di quello ottimizzato
per 486, e cosi' per ogni possibile combinazione.
gcc -v -mcpu=i686 .... rivela un -D__tune_pentiumpro__, che quindi va
bene per PPro, PII, Celeron, un po' meno per PIII, non so per K6 o K7.
2) rpm --rebuild xxx.src.rpm ti evita di dover installare il source
package.
Dopo le premesse, i problemi:
gli spec ben scritti, con Makefile adattati BENE, utilizzano
$RPM_OPT_FLAGS, che viene ricavato da --target, via rpmrc . Quindi
rpm --rebuild --target=i686 xxxx.src.rpm
da' "-O2 -march=i686" che e' la cosa giusta. Una ottimizzazione oltre O2
puo' aumentare la dimensione dell'eseguibile, e puo' anche tirare fuori
dei bug nascosti del programma - in breve, non e' consigliabile a meno che
tu non conosca bene il programma che compili.
Ma comunque non e' detto che il makefile, specie se si tratta di un
pacchetto non ufficiale, rispetti RPM_OPT_FLAGS.
Quindi otterrai un .i686.rpm, ma non e' detto che cambi qualcosa.
E buon divertimento, a ricompilare tutta la distribuzione !
Ciao,
Sergio
--
--------------------------------------------------------------------------
Things will get better despite Sergio Ballestrero
our efforts to improve them. S.Ballestrero@iname.com
-- Will Rogers
Maggiori informazioni sulla lista
primipassi