Pagina 1 di 1

Opzione -g di gcc e pacchetti

Inviato: mer 16 set 2015, 16:22
da conraid
Altro quesito su realizzazione di pacchetti.

Solitamente negli SlackBuild viene dato il comando strip agli eseguibili ed alle librerie per diminuirne la dimensione, perdendo le informazioni di debug. Quando possibile viene aggiunta l'opzione --without-debug o -DNDEBUG o simili al configure, a cmake, etc...
Ho visto che molti programmi, per esempio ora sto compilando Filezilla, aggiungono l'opzione -g ai flags di compilazione.
Leggendo il manuale
https://gcc.gnu.org/onlinedocs/gcc/Debu ... tions.html
tale opzione produce informazioni di debug del programma.

Ora mi chiedo. A questo non è meglio (per velocizzare, rendere più compatti, etc..) disabilitarla (con -g0) in fase di configurazione e quindi di compilazione? Oppure è ininfluente?

Re: Opzione -g di gcc e pacchetti

Inviato: mer 16 set 2015, 16:49
da ponce
le informazioni di debug, se non indispensabili per qualche ragione, di norma vengono disabilitate per ragioni pratiche (software piu' snello e veloce).

e' ininfluente farlo prima o dopo: farlo dopo e' piu' comodo visto che, a seconda dei progetti, puo' essere anche molto complicato capire come disabilitarle in fase di compilazione (alcuni software le forzano).

passare come CFLAGS/CXXFLAGS anche -g0 non funziona sempre.

Re: Opzione -g di gcc e pacchetti

Inviato: mer 16 set 2015, 16:55
da conraid
Quindi anche se lascio "-g" (per toglierla devo agire con sed sui file di configurazione) è uguale tanto dopo lo strip toglie tale informazioni aggiuntive?

Re: Opzione -g di gcc e pacchetti

Inviato: mer 16 set 2015, 16:56
da ponce
conraid ha scritto:Quindi anche se lascio "-g" (per toglierla devo agire con sed sui file di configurazione) è uguale tanto dopo lo strip toglie tale informazioni aggiuntive?
esatto.

a volte faccio anch'io dei salti mortali per toglierlo (sed o che altro) ma alla fin fine non serve.

Re: Opzione -g di gcc e pacchetti

Inviato: mer 16 set 2015, 16:57
da conraid
ponce ha scritto:
conraid ha scritto:Quindi anche se lascio "-g" (per toglierla devo agire con sed sui file di configurazione) è uguale tanto dopo lo strip toglie tale informazioni aggiuntive?
esatto.
ok, perfetto :-)

Un dubbio in meno.