[Kos-dev] un nouveau (moi)

David Decotigny david.decotigny at free.fr
Wed Mar 23 09:24:06 CET 2005


Bonjour,

atounkara at nomade.fr wrote:
> existe il un moyen de le compiler sous visual c++ ?

Reponse courte : non. Raphael a mis le doigt dessus : le compilo C de MS 
ne genere que du format PE. Or, d'une part dans kos/sos on aime bien le 
format ELF32, et d'autre part dans kos le "loader" ne comprend que le 
format ELF. Ceci dit, si tu es motive, rien ne t'empeche de l'etendre au 
format PE (il est prevu pour etre extensible tres facilement).

Cependant, on n'est pas tenu de se restreindre a VC++ quand on programme 
sous win32. On peut utiliser les autres compilos dispo. Par exemple gcc 
(cygwin). Si c'est qu'une histoire d'IDE, on pourrait imaginer utiliser 
eclipse par exemple (ou le machin special c++ et libre, 
quejesaisplussonnom).

Tout ca pour dire que Kos comme sos devraient pouvoir compiler sous 
win32. Il suffit de se compiler un gcc (en fait le "stage1" suffit) vers 
le target i386-elf32 (de memoire) ou i386-pc-gnu. Au debut de kos c'est 
ce qu'on utilisait quand tout le monde n'etait pas encore sous Unix (je 
ne parle pas forcement que de Linux).

La difficulte principale (pour sos comme pour kos) reside dans 
l'installation du noyau sur disquette Grub. Deja il faut disposer d'une 
image de disquette avec Grub dessus, sinon c'est trop complique. Y'en a 
1 fournie dans les source de sos, y'en a une autre sur le site de kos. 
Ensuite il faut copier le noyau sur cette image. Sous Linux, on peut 
utiliser le montage en "loop". Plus generalement, sous Unix on utilisera 
les mtools pour ça (c'est ce qu'on fait avec kos/sos). Sous windows, il 
faut se compiler ces mtools avec cygwin, puisque je suis pas sûr que les 
mtools soient livres en standard avec cygwin (a verifier, ca a peut-etre 
change depuis... pfiou 5 ans). Ou alors la solution la plus lente est de 
travailler avec une vraie disquette plutot que sur une image.

Pour le "comment on compile un cross compilo gcc", voir article 1 sos, 
voir aussi google.

Bonne journee,

-- 
David Decotigny -- http://david.decotigny.free.fr


More information about the Kos-dev mailing list