[Kos-dev] un nouveau (moi)

Thomas Petazzoni thomas.petazzoni at enix.org
Wed Mar 23 11:33:12 CET 2005


Salut,

David Decotigny wrote:

>> existe il un moyen de le compiler sous visual c++ ?

Parfait, David a répondu avant moi ;-)

> 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).

Notre loader est effectivement extensible facilement, mais GRUB l'est 
plus difficilement. Pourtant, c'est GRUB qui charge le loader KOS et 
donc il doit être au format ELF.

Globalement, comme l'a dit David, la compilation de KOS/SOS sous Windows 
doit être assez pointue. J'essaie de résumer ce qui est nécessaire :
  - Installer cygwin (qui contient un compilateur GCC qui génère du PE)
  - À l'aide de Cygwin, compiler un nouveau GCC qui génère du ELF
  - Se faire une image de disquette de boot qui contient GRUB (en 
passant sous Linux, je vois pas d'autres moyens)
  - Compiler les mtools sous Windows ou regarder si ils sont dispos dans 
Cygwin
  - Se débrouiller pour pouvoir copier à l'aide des mtools le noyau et 
les modules de KOS dans l'image de la disquette

Au moins depuis l'an 2000, plus personne de l'équipe de développement de 
KOS n'utilise Windows comme environnement de développement. C'est 
pourquoi nous n'avons pas trop prêté attention à la compilation de KOS 
dans cet environnement.

Néanmoins, j'aimerais attirer ton attention sur le fait que mettre en 
place la compilation de KOS sous Windows sera plutôt complexe (surtout 
si tu n'es pas familier de gcc, des chaînes de cross-compilation et des 
outils GNU). A mon avis, il te sera beaucoup plus simple d'installer un 
système GNU/Linux et de l'utiliser comme environnement de développement. 
En utilisant une distribution comme Ubuntu, en installant quelques 
paquets (gcc, make, grub, mtools), tu auras en une heure un 
environnement de développement fonctionnel et très sympathique.

De plus, au delà de la compilation de KOS, les systèmes Unix offrent de 
très grandes possibilités, qu'il s'agisse du développement (nombreuses 
bibliothèques, nombreux langages, compilateurs, éditeurs, outils), du 
réseau ou de l'utilisation plus standard (bureautique, internet, 
multimédia).

Quand j'ai commencé KOS (en 1998), je travaillais également sous 
Windows. J'ai commencé à utiliser GNU/Linux pour KOS, parce que c'était 
nettement plus puissant comme environnement de développement. Depuis, je 
n'utilise plus que ça.

En résumé : « t'emmerdes pas à essayer sous Windows, fais ça sous 
GNU/Linux ».

Bonne journée,

Thomas
-- 
Thomas Petazzoni
thomas.petazzoni at enix.org


More information about the Kos-dev mailing list