Poids d'un programme c++

Poids d'un programme c++ - C++ - Programmation

Marsh Posté le 12-10-2004 à 17:32:13    

Bonjour,
 
Sous windows quand je compile un bête programme avec gcc 3.4.1 (cygwin) j'obtient un programme de 300ko après un "strip prog.exe".
 
Sous linux le meme programme, compilé aussi avec gcc 3.4.1 fait 4ko après avoir fait un "strip prog".
 
Pourquoi y a t-il une tel différence de poids ?
 
Merci d'avance...

Reply

Marsh Posté le 12-10-2004 à 17:32:13   

Reply

Marsh Posté le 12-10-2004 à 17:39:17    

déjà si tu veux la taille d'un programme, c'est pas avec ls ou dir qu'il faut faire
 
size a.out
 
après sous cygwin/windows y a des trucs rajoutés. je me souviens que pour mingw, y avait un -Dmachin qui permettait de dégresser tout ça (faudrait faire une recherche sur le forum). 300ko ça reste quand même beaucoup, est-ce que c'est  en -O2 ?

Reply

Marsh Posté le 12-10-2004 à 17:44:59    

La différence, c'est la couche unix. Par exemple, Windows ne sais pas faire de fork(). Il faut donc que cyg-gcc intègre tout un merdier pour gérer l'état du programme, etc.

Reply

Marsh Posté le 12-10-2004 à 17:46:29    

-Oui c'est en -O2
-Merci, je vais chercher après cette option: -D????
-La commande size me donne ceci:
 
   text    data     bss     dec     hex filename
   1982     316      12    2310     906 test
 
 
C'est quoi le poids du programme dans tout ses chiffres (je suis débutant sous linux) ?
 

Reply

Marsh Posté le 12-10-2004 à 17:49:53    

c'est la colonne dec (hex c'est la même chose mais en base16)
 
tu as donc un programme de 2310o

Reply

Marsh Posté le 12-10-2004 à 17:53:42    

Reply

Marsh Posté le 12-10-2004 à 18:49:14    

Pourquoi "ls -l" me donne pas le même résultat que "size" ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed