Re: due domande sulla compilazione ottimizzata dei sorgenti
Il giorno mer, 07/12/2005 alle 06.12 -0500, Premoli, Roberto ha scritto: [snip] > mmm e la dannata soddisfazione di poter dire: "ho fatto come dicevo io" > e/o "ce l'ho fatta!", dove la metti? Dopotutto, e da stimoli apparentemente > inutili/perso_in_partenza che e' nato l'open source... se stalmann non si > fosse arrabbianto perche' gli negarono i sorgenti del driver di una > stampante (dice la leggenda) non avrebbe intrapreso la strada che ci ha > portati tutti quanti dove siamo ora... Con la piccola, insignificante differenza che poi RMS i driver li ha scritti (e se non proprio quelli almeno un altro pacco di software). Se hai davvero voglia di produrre qualcosa, come dicevo prima, le patch ad apt-build o ai singoli pacchetti per usare DEB_BUILD_OPTIONS nel modo giusto sono più che ben accette. federico -- Federico Di Gregorio http://people.initd.org/fog Debian GNU/Linux Developer[EMAIL PROTECTED] INIT.D Developer [EMAIL PROTECTED] Bhoe, bhe, bhe. Sono brutto e cattivo. Brutto lama! -- Cuzco signature.asc Description: Questa parte del messaggio è firmata
Re: due domande sulla compilazione ottimizzata dei sorgenti
In data Wed, 7 Dec 2005 06:12:27 -0500 , "Premoli, Roberto" <[EMAIL PROTECTED]> scrisse: > >> 3. modificare a mano le rules di ogni pacchetto > > > >e perchè no? > Gia, devo solo editare/modificare/salvare un paio di migliaia di > file... in un paio di settimane, dovrei farcela :-) > > >> Che tristezza.. :-( :-( :-( :-( :-( > > >IMHO la vera tristezza è compilare qualcosa che hanno già compilato, > >e ottenere un binario che non avrà alcuna miglioria, in termini > >prestazionali > mmm e la dannata soddisfazione di poter dire: "ho fatto come > dicevo io" e/o "ce l'ho fatta!", dove la metti? Dopotutto, e da > stimoli apparentemente inutili/perso_in_partenza che e' nato l'open > source... se stalmann non si fosse arrabbianto perche' gli negarono i > sorgenti del driver di una stampante (dice la leggenda) non avrebbe > intrapreso la strada che ci ha portati tutti quanti dove siamo ora... Si, ma questa soddifazione non l'avresti usando automatismi creati da altri, no? quindi, sotto di vi debian/rules ;-) -- Marco BertorelloSystem Administrator Linux Registered User #319921 [EMAIL PROTECTED] "Conoscere Bill Gates era il secondo dei miei sogni, il primo è quello di visitare Disneyland" - Arfa Karim pgp5SgXvF3riD.pgp Description: PGP signature
Re: due domande sulla compilazione ottimizzata dei sorgenti
>> Cosa posso fare: >> >> 1. aspettare etch stabile, sperando che apt-build funzioni VERAMENTE > >non credo. Dalla man page di apt-build, si legge: > >BUGS > Many. > >Che credo sia molto esplicativo :) Magari, in un paio d'anni, risolveranno :-) >> 2. cominciare a studiarmi gentoo > >quando lo provi, non stupirti se poi, dopo un paio di giorni di >compilazione, scopri che emerge è come apt-build... ovvero non funziona >:-) >Se ci sono problemi durante la compilazione, non te li gestisce mica... Acc! >> 3. modificare a mano le rules di ogni pacchetto > >e perchè no? Gia, devo solo editare/modificare/salvare un paio di migliaia di file... in un paio di settimane, dovrei farcela :-) >> Che tristezza.. :-( :-( :-( :-( :-( >IMHO la vera tristezza è compilare qualcosa che hanno già compilato, e >ottenere un binario che non avrà alcuna miglioria, in termini >prestazionali mmm e la dannata soddisfazione di poter dire: "ho fatto come dicevo io" e/o "ce l'ho fatta!", dove la metti? Dopotutto, e da stimoli apparentemente inutili/perso_in_partenza che e' nato l'open source... se stalmann non si fosse arrabbianto perche' gli negarono i sorgenti del driver di una stampante (dice la leggenda) non avrebbe intrapreso la strada che ci ha portati tutti quanti dove siamo ora... Roberto
Re: due domande sulla compilazione ottimizzata dei sorgenti
In data Wed, 7 Dec 2005 05:12:46 -0500 , "Premoli, Roberto" <[EMAIL PROTECTED]> scrisse: > Cosa posso fare: > > 1. aspettare etch stabile, sperando che apt-build funzioni VERAMENTE non credo. Dalla man page di apt-build, si legge: BUGS Many. Che credo sia molto esplicativo :) > 2. cominciare a studiarmi gentoo quando lo provi, non stupirti se poi, dopo un paio di giorni di compilazione, scopri che emerge è come apt-build... ovvero non funziona :-) Se ci sono problemi durante la compilazione, non te li gestisce mica... > 3. modificare a mano le rules di ogni pacchetto e perchè no? > Che tristezza.. :-( :-( :-( :-( :-( IMHO la vera tristezza è compilare qualcosa che hanno già compilato, e ottenere un binario che non avrà alcuna miglioria, in termini prestazionali Se ci sono i pacchetti -i686, per P2 puoi usare quelli. -- Marco BertorelloSystem Administrator Linux Registered User #319921 [EMAIL PROTECTED] Raccogliere dati è un passo verso la saggezza. Ma condividerli fa nascere una comunità-- da spot IBM/Linux pgpc2h5PvxlSp.pgp Description: PGP signature
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Wed, 7 Dec 2005 05:04:18 -0500 "Premoli, Roberto" <[EMAIL PROTECTED]> wrote: > Beh, e allora, adesso che hanno mollato i386 e la "entry level" delle > cpu x86 e' diventato l'i486, come fanno? Continueranno a compilare > per una cpu "morta" come il 386? No, e` implicito in gcc se ben ricordo. Semplicemente le nuove release compilano ottimizzando "al minimo" per 486. > Tra un po', quando la cpu minima sara' il Pentium1/2/3, compilare 386 > sarebbe come usare un 386 a XGhz, senza mmx, sse, etc etc etc. dove la > velocita' compensa la non ottimizzazione del soft... Questo accade ancora, dato che l'autovettorizzazione del codice in gcc non e` cosi` efficiente, sempre che io sappia. Certo, non e` un compito facile in assoluto. > Mi sa che qui e' ora di mettere le mani su gentoo :-( Tieni solo presente che, in linea di massima, se il codice non lo prevede gia` di suo di mmx/sse/sse2 non e` che se ne fa di molto, adesso. -- Francesco Romani -- Ikitt 'In fact, users don't read /anything/'-- Joel Spolsky void *a, *b; a != b; -- violates patent #437822 -- Francesco Romani -- Ikitt 'In fact, users don't read /anything/' -- Joel Spolsky void *a, *b; a != b; -- violates patent #437822 [http://snipurl.com/ar6e] -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: due domande sulla compilazione ottimizzata dei sorgenti
>Allora organizzati con un sistema distribuito di macchine che compilano >giorno e notte codice per le varie architetture. Troppa grazie, P2 mi basta :-) CUT >Tu potresti dirmi: "Ma cosi` sarebbe piu` facile per l'utente >ricompilare tutti i pacchetti!" Esatto. >E io ti risponderei: "IMHO Debian non e` progettata perche` l'utente >possa, _in_modo_semplice_, ricompilare tutti i pacchetti con i propri >flag, se si esclude apt-build che per ora non funziona" Avevo aspettato il rilascio di sarge _sperando_ che apt-build funzionasse ma ho verificato sperimentalmente che cosi' non e'. Cosa posso fare: 1. aspettare etch stabile, sperando che apt-build funzioni VERAMENTE 2. cominciare a studiarmi gentoo 3. modificare a mano le rules di ogni pacchetto Che tristezza.. :-( :-( :-( :-( :-( Roberto -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: due domande sulla compilazione ottimizzata dei sorgenti
Il giorno mer, 07/12/2005 alle 05.04 -0500, Premoli, Roberto ha scritto: > Tra un po', quando la cpu minima sara' il Pentium1/2/3, compilare 386 > sarebbe come usare un 386 a XGhz, senza mmx, sse, etc etc etc. dove la > velocita' compensa la non ottimizzazione del soft... un po' una stupidata, > dico io. Mi sa che qui e' ora di mettere le mani su gentoo :-( OVVIAMENTE le patch al sistema di build sono sempre ben accette. Mandale a debian-devel@lists.debian.org, grazie. federico -- Federico Di Gregorio http://people.initd.org/fog Debian GNU/Linux Developer[EMAIL PROTECTED] INIT.D Developer [EMAIL PROTECTED] Quis custodiet ipsos custodes? -- Juvenal, Satires, VI, 347 signature.asc Description: Questa parte del messaggio è firmata
Re: due domande sulla compilazione ottimizzata dei sorgenti
>> La domanda e' : come? >> Mi spiego: avendo a disposizione _TUTTI_ i sorgenti di debian, >> COME faccio a >> farli compilare TUTTI per una particolare cpu (es: pentium2) in modo >> AUTOMATIZZATO senza dover compilare manualmente ogni pacchetto? >Se intendi "ottimizzati per una particolare cpu" la risposta è NON PUOI. Beh, e allora, adesso che hanno mollato i386 e la "entry level" delle cpu x86 e' diventato l'i486, come fanno? Continueranno a compilare per una cpu "morta" come il 386? In qualche modo, DOVREBBERO dire in fase di compilazione: "oh, guarda che la cpu minima adesso e' il 486/586/etc" altrimenti, continuando a compilare i386, si perdono le capacita' delle cpu superiori... Tra un po', quando la cpu minima sara' il Pentium1/2/3, compilare 386 sarebbe come usare un 386 a XGhz, senza mmx, sse, etc etc etc. dove la velocita' compensa la non ottimizzazione del soft... un po' una stupidata, dico io. Mi sa che qui e' ora di mettere le mani su gentoo :-(
Re: due domande sulla compilazione ottimizzata dei sorgenti
Il giorno mer, 07/12/2005 alle 04.40 -0500, Premoli, Roberto ha scritto: > >E` ovvio che se compili su AMD64 non è richiesto nessun flag del tipo > >"-m" per compilare per AMD64. Ogni pacchetto viene compilato per una > >certa architettura su di una macchina con quell'architettura, così non > >si deve cambiare niente in debian/rules. Quindi tu _PUOI_ fare tutto > >quello che fanno i buildd della debian. > > La domanda e' : come? > Mi spiego: avendo a disposizione _TUTTI_ i sorgenti di debian, COME faccio a > farli compilare TUTTI per una particolare cpu (es: pentium2) in modo > AUTOMATIZZATO senza dover compilare manualmente ogni pacchetto? Se intendi "ottimizzati per una particolare cpu" la risposta è NON PUOI. -- Federico Di Gregorio http://people.initd.org/fog Debian GNU/Linux Developer[EMAIL PROTECTED] INIT.D Developer [EMAIL PROTECTED] Alla faccia della trasparenza! Ma che si fa, lo si prende e lo si mena? (In pubblico, per trasparenza.) -- signature.asc Description: Questa parte del messaggio è firmata
Re: due domande sulla compilazione ottimizzata dei sorgenti
>E` ovvio che se compili su AMD64 non è richiesto nessun flag del tipo >"-m" per compilare per AMD64. Ogni pacchetto viene compilato per una >certa architettura su di una macchina con quell'architettura, così non >si deve cambiare niente in debian/rules. Quindi tu _PUOI_ fare tutto >quello che fanno i buildd della debian. La domanda e' : come? Mi spiego: avendo a disposizione _TUTTI_ i sorgenti di debian, COME faccio a farli compilare TUTTI per una particolare cpu (es: pentium2) in modo AUTOMATIZZATO senza dover compilare manualmente ogni pacchetto? Roberto
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Wed, 2005-12-07 at 03:46 -0500, Premoli, Roberto wrote: > Quello che devo poter fare io, _DEVE_ essere esattamente lo stesso di > quello che possono fare loro, se no che open source del cavolo e'? Perfetto. Allora organizzati con un sistema distribuito di macchine che compilano giorno e notte codice per le varie architetture. Inoltre che gliene frega a loro delle opzioni di ottimizzazione e della standardizzazione di /debian/rules ? Basta che lo script di compilazione funzioni, sia veloce, pulito, ben fatto, ecc. e che produca codice valido... Perche` dovrebbero contenere tutti le stesse variabili ? Perche` dovrebbero cambiare le opzioni ed i flag di ogni pacchetto... Senno i maintainer che ci stanno a fare? :O Tu potresti dirmi: "Ma cosi` sarebbe piu` facile per l'utente ricompilare tutti i pacchetti!" E io ti risponderei: "IMHO Debian non e` progettata perche` l'utente possa, _in_modo_semplice_, ricompilare tutti i pacchetti con i propri flag, se si esclude apt-build che per ora non funziona" Ciao, Dario -- <> (Raistlin Majere, DragonLance Chronicles -Dragons of Spring Drawning-) -- Dario Faggioli GNU/Linux Registered User: #340657 signature.asc Description: This is a digitally signed message part
Re: due domande sulla compilazione ottimizzata dei sorgenti
Il giorno mer, 07/12/2005 alle 03.46 -0500, Premoli, Roberto ha scritto: > >> Ma come cavolo fanno quelli di debian a ricompilare per le varie > >> architetture in modo automatico??? > >Bhe`, penso sia una cosa molto molto diversa! > >Un conto e` quello che devono fare loro, un conto e` quello che devi, e > >che devi potere, fare tu... > > Quello che devo poter fare io, _DEVE_ essere esattamente lo stesso di > quello che possono fare loro, se no che open source del cavolo e'? > Roberto E` ovvio che se compili su AMD64 non è richiesto nessun flag del tipo "-m" per compilare per AMD64. Ogni pacchetto viene compilato per una certa architettura su di una macchina con quell'architettura, così non si deve cambiare niente in debian/rules. Quindi tu _PUOI_ fare tutto quello che fanno i buildd della debian. -- Federico Di Gregorio http://people.initd.org/fog Debian GNU/Linux Developer[EMAIL PROTECTED] INIT.D Developer [EMAIL PROTECTED] Barbiere gratis. Pompini anche. -- signature.asc Description: Questa parte del messaggio è firmata
Re: due domande sulla compilazione ottimizzata dei sorgenti
>> Ma come cavolo fanno quelli di debian a ricompilare per le varie >> architetture in modo automatico??? >Bhe`, penso sia una cosa molto molto diversa! >Un conto e` quello che devono fare loro, un conto e` quello che devi, e >che devi potere, fare tu... Quello che devo poter fare io, _DEVE_ essere esattamente lo stesso di quello che possono fare loro, se no che open source del cavolo e'? Roberto -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Wed, 2005-12-07 at 03:10 -0500, Premoli, Roberto wrote: > I punti 1, 3 e 4 li posso fare con due distinti script, ma il punto 2 lo > devo fare necessariemanete a mano. E' un peccato che i file rules non > sono standard ma variano a seconda di chi lo ha fatto, altrimenti > sarebbe stato molto pu' facile gestire tutto tramite script > automatici A costo di ripetermi, IMHO, Debian per ora non e` fatta per essere ricompilata da zero con ottimizzazioni specifiche... Se vuoi farlo per tutti i pacchetti ci diventi pazzo, per quello c'e` Gentoo!! :O Possiamo sperare nei progressi di apt-build, quando sara` pronto lui probabilmente le cose cambieranno... Ma per ora :( > Ma come cavolo fanno quelli di debian a ricompilare per le varie > architetture in modo automatico??? Bhe`, penso sia una cosa molto molto diversa! Un conto e` quello che devono fare loro, un conto e` quello che devi, e che devi potere, fare tu... Ciao, Dario -- <> (Raistlin Majere, DragonLance Chronicles -Dragons of Spring Drawning-) -- Dario Faggioli GNU/Linux Registered User: #340657 signature.asc Description: This is a digitally signed message part
Re: due domande sulla compilazione ottimizzata dei sorgenti
>> ma poi, quando compililo con apt-get source --build nomepacchetto, >> raramente vedo passare tali parametri impostati, (su molti pacchetti >> ricompilati, solo in una minoranza vedevo scorrere a video > >Avevo notato anche io una cosa del genere. >Controlla il comando che viene usato per compilare. Dovrebbe >essere /usr/bin/gcc. Ora controlla cos'e`. Probabilmente e` uno script >che richiama gcc.real e che usa i parametri che metti nella config. Il mio /usr/bin/gcc punta a /usr/bin/gcc-3.3. Alla disperata (cioe' quello che ho deciso di fare), posso editare tutti i ../debian/rules e impostare manualmente CHOST, CFLAGS e CXXFLAGS. Pero', questi tre parametri non sono sempre presenti, e se lo sono, spesso sono impostati come DEBFLAGS= -g -O2. A questo punto, io sostituisco "-g -O2" con "-march=pentium2 -O3 -pipe -fomit-frame-pointer", salvo, esco e compilo. Questa e' sequenza dei passi che faccio: 1. apt-get source nomepacchetto 2. edito nomepacchetto/debian/rules e imposto i parametri 3. apt-get build-dep -y nomepacchetto 4. apt-get source --no-download --build nomepacchetto I punti 1, 3 e 4 li posso fare con due distinti script, ma il punto 2 lo devo fare necessariemanete a mano. E' un peccato che i file rules non sono standard ma variano a seconda di chi lo ha fatto, altrimenti sarebbe stato molto pu' facile gestire tutto tramite script automatici Ma come cavolo fanno quelli di debian a ricompilare per le varie architetture in modo automatico??? Roberto -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Tue, 2005-12-06 at 06:55 -0500, Premoli, Roberto wrote: > "-Wall" : qualcuno mi sa dire cosa significa? > Ti hanno gia` risposto > Seconda domanda (collegata all prima) > Poiche' vorrei compilare ottimizzato per la mia cpu, > ho esportato dei parametri con: > > export CHOST="i686-pc-linux-gnu" > export CFLAGS="-march=pentium2 -O3 -pipe -fomit-frame-pointer" > export CXXFLAGS="-march=pentium2 -O3 -pipe -fomit-frame-pointer" > [...] > Devo forse editare il configure di ogni singolo pacchetto ed impostare > li dentro i flag CHOST, CFLAGS e CXXFLAGS? > Purtroppo non lo so con certezza, ma per quello che ho potuto capire io _SI_ Pensa che nel file debian/rules delle glibc imposta una variabile BUILD_CC = gcc-4.0 e poi usa quello come compilatore (su unstable ovviamente), indipendentemente da quello che tu hai definito con export ecc. ecc. Dovresti cambiare tutti i Makefile di tutti i pacchetti, e scordati di trovarne due che impostano le opzioni di ottimizzazione nello stesso posto!! :O D'altra parte (IMHO) Debian, almeno finche` non funzionera` bene apt-build, non e` fatta per essere ricompilata Ciao, Dario -- <> (Raistlin Majere, DragonLance Chronicles -Dragons of Spring Drawning-) -- Dario Faggioli GNU/Linux Registered User: #340657 signature.asc Description: This is a digitally signed message part
Re: due domande sulla compilazione ottimizzata dei sorgenti
Il giorno mar, 06/12/2005 alle 06.55 -0500, Premoli, Roberto ha scritto: > ma poi, quando compililo con apt-get source --build nomepacchetto, > raramente vedo passare tali parametri impostati, (su molti pacchetti > ricompilati, solo in una minoranza vedevo scorrere a video Avevo notato anche io una cosa del genere. Controlla il comando che viene usato per compilare. Dovrebbe essere /usr/bin/gcc. Ora controlla cos'e`. Probabilmente e` uno script che richiama gcc.real e che usa i parametri che metti nella config. Bye. -- Alessandro Pellizzari -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Tue, 6 Dec 2005 06:55:52 -0500 "Premoli, Roberto" <[EMAIL PROTECTED]> wrote: > Prima domanda: > Ricompilando i sorgenti, mi capita di vedere sempre passare il > parametro > > "-Wall" : qualcuno mi sa dire cosa significa? da man gcc: -Wall Turns on all optional warnings which are desirable for normal code. At present this is -Wcomment, -Wtrigraphs, -Wmultichar and a warning about integer promotion causing a change of sign in "#if" expressions. Note that many of the preprocessor's warnings are on by default and have no options to control them. > Seconda domanda (collegata all prima) > Poiche' vorrei compilare ottimizzato per la mia cpu, > ho esportato dei parametri con: > > export CHOST="i686-pc-linux-gnu" > export CFLAGS="-march=pentium2 -O3 -pipe -fomit-frame-pointer" > export CXXFLAGS="-march=pentium2 -O3 -pipe -fomit-frame-pointer" non so te, ma io ho provato gentoo per un po e ho imparato che -O3 è il male, almeno nel mio caso. tempi di compilazione molto aumentati, dimensione degli eseguibili anche e vantaggi prestazionali non notevoli (almeno, il rapporto era < 1) > ma poi, quando compililo con apt-get source --build nomepacchetto, > raramente vedo passare tali parametri impostati, (su molti pacchetti > ricompilati, solo in una minoranza vedevo scorrere a video > "i686-pc-linux-gnu" e "- march=pentium2 -O3 -pipe > -fomit-frame-pointer". Significa forse che il configure del singolo > pacchetto ha un piu' alto livello di privilegio nell'impostazione dei > parametri di ottimizzazione? Devo forse editare il configure di ogni > singolo pacchetto ed impostare li dentro i flag CHOST, CFLAGS e > CXXFLAGS? per questo non ti so aiutare, mi spiace ciao -- Andrea Lusuardi aka UoVoBW Registered Linux User #364578 - wanna see a turtle ride a slug? compile a vb program in wine
Re: due domande sulla compilazione ottimizzata dei sorgenti
On Tue, 6 Dec 2005 06:55:52 -0500 "Premoli, Roberto" <[EMAIL PROTECTED]> wrote: > Prima domanda: > Ricompilando i sorgenti, mi capita di vedere sempre passare il > parametro > "-Wall" : qualcuno mi sa dire cosa significa? 'Warn all', abilita tutti i controlli possibili sul sorgente, conseguentemente il compilatore emettera` tutti i warning del caso. -- Francesco Romani -- Ikitt 'In fact, users don't read /anything/' -- Joel Spolsky void *a, *b; a != b; -- violates patent #437822 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]