[Résolu] [GCC]Probleme compilation FLAT BINARY sur windows
Salut,
Voila j'essaye actuellement de compiler des sources en C avec gcc et ld en "plain binary" dit aussi"binaire plat" avec l'option --oformat binary de ld. j'essaye sur un tous petit bout de C.
http://www.hexanium.com/hexatronic/o..._link/main.jpg
Cela marche tres bien sur Linux, aucun probleme.
http://www.hexanium.com/hexatronic/o...k/console3.jpg
Par contre sur windows, je n'y arrive pas je ne comprend pas tous ce qui ce passe en fait.
http://www.hexanium.com/hexatronic/o...k/console2.jpg
Cliquez ici pour voir le déroulement de la methode utilisée.
Je me récupere les message d'erreur suivant:
undefined reference to '_alloca'
undefined reference to '__main'
[Je n'est pas mis ca dans mon code moi !!!]
Lorsqu'on essaye d'aller plus loin, linkage directement en binaire on a le message d'erreur :
ld: PE operations on non PE file.
(Les PE sont les formats d'exécutables sur windows)
[Bah je ne veux pas faire de PE moi justement !!!!]
Voila mes questions
- 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 ?
- Est ce que je me trompe ?
J'ai du mal a trouver les infos sur le net concernant Windows...
Merci de m'aider
Hexanium