Salut,
j'essaye de compiler un fichier C en binaire plat, c'est a dire le bytecode pur sans entete ni ajout de library.
J'ai essayé sous Linux ca marche tres bien, j'ai essayez sous windows et la impossible !!!
je ne comprend pas tous , quelqu'un peut il m'aider ?
cliquez ici pour voir la procedure d'essais
Sous linux:

Sous windows

Message d'erreur:
undefined reference to '_alloca' -> _alloca non définis, bah c'est
pas moi qui à mis ça dans le source !!!
undefined reference to '__main' -> _main non définis, bah c'est
pas moi qui à mis ça dans le source !!!
Lorsqu'on essaye d'aller plus loin, linkage
directement en binaire on a le message d'erreur :
ld: PE operations on non PE file. -> Bah je ne veux pas faire de PE moi
justement !!!!
(Les PE sont les formats d'exécutables sur windows)
Je ne comprend pas cette différences entre
les deux OS sur une même appli portée.
-
D'ou viennent ces underscore '_' ? Comment
s'en débarrasser ?
-
D'ou vient ce __main ? Comment s'en
débarrasser ?
-
D'ou vient ce __alloca ? Comment s'en
débarrasser ?
-
Pourquoi dois je passer "_main" au
lieu de "main" comme point d'entrée ?
-
Bref comment compiler plain binary sous
Windows avec gcc et lg ?.
-
Pourquoi ces différences entre les versions
portées gcc et ld ?
-
Quelqu'un a t'il déja réussi a faire ca
sous windows ?
Quelqu'un peut il maider ?
Merci d'avance
Hexanium