Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Come funzionano le CFLAGS?? [FAQ]
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
nomadsoul
Apprentice
Apprentice


Joined: 14 Mar 2004
Posts: 172

PostPosted: Tue Mar 16, 2004 6:46 pm    Post subject: Come funzionano le CFLAGS?? [FAQ] Reply with quote

-Premetto che ho gia cercato su google e sul forum-

volevo solo sapere che ruolo hanno le impostazioni delle CFLAGS.
fin'ora sn riuscito a capire che -march=processore
ottimizza il sistema per il processore che hai
quello che non capisco è a cosa servono gli altri tag tipo
-03 -pipe etc
di conseguenza non so come ottimizzare al meglio il tutto :P

grazie a tutti dell'aiuto
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 31283
Location: here

PostPosted: Tue Mar 16, 2004 7:03 pm    Post subject: Reply with quote

Per me basta che metti
Code:
-march=processore -O2 -pipe -fomit-frame-pointer

O -On al posto di -O2 se hai un processore un po lento e poca ram.
_________________
Questions are guaranteed in life; Answers aren't.


Last edited by fedeliallalinea on Tue Mar 16, 2004 7:04 pm; edited 1 time in total
Back to top
View user's profile Send private message
MyZelF
Bodhisattva
Bodhisattva


Joined: 25 Feb 2003
Posts: 2010
Location: Venice, Italy

PostPosted: Tue Mar 16, 2004 7:03 pm    Post subject: Reply with quote

Prova con un

Code:
$ man gcc


;)
_________________
"Larry the Cow was a bit frustrated at the current state of Linux Distributions..."
Back to top
View user's profile Send private message
-YoShi-
l33t
l33t


Joined: 26 Nov 2003
Posts: 684
Location: Besana Brianza - ItaLy -

PostPosted: Tue Mar 16, 2004 7:19 pm    Post subject: Reply with quote

Oppure se proprio non vuoi andare di $ man dai un occhio a questo (a mio avviso) interessante post :wink:
LinK
_________________
Io lo vedo tutti i giorni, un Re per vederlo deve uscire dal suo regno, e il Papa lo vede quando si spoglia. Chi è?
Back to top
View user's profile Send private message
nomadsoul
Apprentice
Apprentice


Joined: 14 Mar 2004
Posts: 172

PostPosted: Tue Mar 16, 2004 7:19 pm    Post subject: Reply with quote

8O sticaxxil casino è che gcc lo devo ancora creare... prima di fare il bootstrap volevo settare i flags al meglio :D

edit:
ho capito.. ho toccato un argomento delicatissssimo :D
Back to top
View user's profile Send private message
hardskinone
Guru
Guru


Joined: 02 Jan 2004
Posts: 460

PostPosted: Tue Mar 16, 2004 8:10 pm    Post subject: Reply with quote

le CFLAG puoi sempre cambiarle in un secondo momento pena pero' il dover ricompilare tutto con le nuove opzioni.
Back to top
View user's profile Send private message
nomadsoul
Apprentice
Apprentice


Joined: 14 Mar 2004
Posts: 172

PostPosted: Tue Mar 16, 2004 8:20 pm    Post subject: Reply with quote

ecco appunto... :P
Back to top
View user's profile Send private message
blackfede
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 178

PostPosted: Tue Mar 16, 2004 8:51 pm    Post subject: Reply with quote

O meglio, le puoi cambiare quando ti pare senza dover ricompilare nulla, però se le cambi è perchè vuoi un'ottimizzazione più spinta, e ha poco senso usare dei programmi compilati con le vecchie flags, insieme ad altri compilati con le nuove...il tutto IHMO! :P
Back to top
View user's profile Send private message
maiosyet
Apprentice
Apprentice


Joined: 14 Oct 2003
Posts: 188
Location: /Italy/Milan

PostPosted: Tue Mar 16, 2004 8:59 pm    Post subject: Reply with quote

Volevo aprire una discussione simile ma non ne avevo mai il tempo, mi intrufolo in questa con un paio di domande che da tanto mi faccio:

C'è un elenco delle cflags con relative spiegazioni? Sarebbe comodo. Ad esempio due giorni fa mi sono compilato kde senza la cflag per kde e non è servito a una pippa 8O

Del tipo:

-march pentium4 = ottimizzazione per processori pentium4 ecc.

E se non c'è potremmo sempre farne uno (ma mi sembra strano che non ci sia)
Back to top
View user's profile Send private message
blackfede
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 178

PostPosted: Tue Mar 16, 2004 9:05 pm    Post subject: Reply with quote

Qui trovi l'elenco:
http://www.gentoo.org/dyn/use-index.xml

Se le vuoi vedere TUTTE, ma proprio TUTTE usa il comando

euse -i
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 31283
Location: here

PostPosted: Tue Mar 16, 2004 9:07 pm    Post subject: Reply with quote

blackfede wrote:
Qui trovi l'elenco:
http://www.gentoo.org/dyn/use-index.xml

Se le vuoi vedere TUTTE, ma proprio TUTTE usa il comando

Attento che queste sono le USE FLAGS e non le CFLAGS.
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
blackfede
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 178

PostPosted: Tue Mar 16, 2004 9:11 pm    Post subject: Reply with quote

ARRRGGG :!: :!: :!:
Ma cosa mi sono fumato stasera???? :(
Chiedo venia... :?

Se vuoi un'elenco delle CFLAGS un bel
man gcc e man g++, risolve tutto! :)
Li trovera l'elenco completo.
Back to top
View user's profile Send private message
maiosyet
Apprentice
Apprentice


Joined: 14 Oct 2003
Posts: 188
Location: /Italy/Milan

PostPosted: Tue Mar 16, 2004 9:15 pm    Post subject: Reply with quote

Ah ops...ma allora le CFLAG che cosa sono? 8O

Tutta la documentazione del sito parla di USE flag, non di CFLAG
Back to top
View user's profile Send private message
blackfede
Apprentice
Apprentice


Joined: 29 Dec 2003
Posts: 178

PostPosted: Tue Mar 16, 2004 9:20 pm    Post subject: Reply with quote

Le CFLAGS sono le flag di compilazione, praticamente sono le opzioni che puoi passare al compilatore per fargli ottimizzare il codice, e fargli creare quindi eseguibili più performanti sulla tua macchina.
Comunque se cerchi in giro sul forum trovi veramente un sacco di materiale che ti può aiutare a capire meglio. Se ti interessa, una discussione interessante (ma in inglese) è il topic "CFLAGS Central", sono circa 20-25 pagine di disquisizioni sulle CFLAGS migliori per varie architetture.
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 31283
Location: here

PostPosted: Tue Mar 16, 2004 9:20 pm    Post subject: Reply with quote

maiosyet wrote:
Ah ops...ma allora le CFLAG che cosa sono? 8O

Le CFLAGS sono le ottimizzazioni per il compilatore (creera' dei binari ottimizzati).
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
maiosyet
Apprentice
Apprentice


Joined: 14 Oct 2003
Posts: 188
Location: /Italy/Milan

PostPosted: Tue Mar 16, 2004 9:24 pm    Post subject: Reply with quote

Dalla documentazione:

CFLAGS Le opzioni per il gcc quando compila programmi in C (file *.c)

E occhei...ma quindi un elenco di cfleg non c'è?

USE Questa vi permette di definire componenti opzionali, se esistono, che possono essere inclusi durante la compilazione di altri programmi. Per esempio se avete gnome incluso nella variabile USE, quando compilate xchat verrà incluso il supporto GNOME. Anche tutte le dipendenze sono USE-sensibili.

Ma quindi tantovale abilitarle tutte le USE flag?
Back to top
View user's profile Send private message
fedeliallalinea
Administrator
Administrator


Joined: 08 Mar 2003
Posts: 31283
Location: here

PostPosted: Tue Mar 16, 2004 9:28 pm    Post subject: Reply with quote

maiosyet wrote:
E occhei...ma quindi un elenco di cfleg non c'è?

si
Code:
$ man gcc


maiosyet wrote:
Ma quindi tantovale abilitarle tutte le USE flag?

No solo quelle che vuoi che ci siano. Per esempio io voglio il supporto kde ma non gnome,..
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
Danilo
l33t
l33t


Joined: 05 Feb 2004
Posts: 747
Location: Italy

PostPosted: Tue Mar 16, 2004 9:36 pm    Post subject: Reply with quote

maiosyet wrote:
Ah ops...ma allora le CFLAG che cosa sono? 8O
Tutta la documentazione del sito parla di USE flag, non di CFLAG


Allora le CFLAGsono le flag di ottimizzazione del compilatore. Questo concetto lo trovi in qualunque file Makefile, in qualunque piattaforma/sistema operativo che usa c++.
Esse vengono passate direttamente al compilatore.
Con essi provvedi (te ne cito solo qualcuna):
- ottimizzazioni varie (es.: attivare le direttiva inline) : -O, -O1, -O2,...
- inserire o meno le informazioni di debug -g, -g1, ...-gall
- ecc ecc

Da notare che quando scrivi march=pentium4 gli stai dicendo di attivare TUTTE le ottimizzazioni consigliate x pentium 4.
La lista delle CFLAG la trovi ANCHE con un man g++

Le USE FLAG sono delle flag specifiche di Gentoo (non so se altre distribuzioni usano un concetto analogo) e con esse decidi per la specifica compilazione quale supporto attivare (o per tutte le future compilazioni se le inserisci in /etc/make.conf).
Es: Se tu usi solo kde tu potrai mettere in /etc/make.conf:
Code:
 
Use "-gnome -gtk"

In questo modo quando compili qualcosa dici al compilatore di non attivare il supporto per gnome e gtk. E' ovvio che se ti compili gnucash lui comunque ti compila qualcosa di gtk perche' e' essenziale.
In questo modo risparmi un botto di librerie da compilare.
Emerge e tutto quello che c'e' dietro provvede a smazzare le use e a settare correttamente i vari configure - che produrranno i vari makefile - che saranno dati in pasto al compilatore.
Ciao.
Back to top
View user's profile Send private message
maiosyet
Apprentice
Apprentice


Joined: 14 Oct 2003
Posts: 188
Location: /Italy/Milan

PostPosted: Tue Mar 16, 2004 9:38 pm    Post subject: Reply with quote

Grazie mille, ma anche se lo scrivevi una sola volta capivo lostesso :wink:

editShev: la battuta è riferita al fatto che il post appariva ripetuto per errore quattro volte. Ora tre copie sono state eliminate, avverto per dovere di cronaca e permettere la comprensione della battuta :P
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum