Introduktion till EMX

Denna sidan har ett par år på nacken. EMX har uppdaterats sedan dess. Dock bör principen och filnamnen stämma ganska hyfsat ändå. Filerna nämda här under hittar du på Hobbes.

Vad är egentligen EMX?

EMX är OS/2-versionen av GCC, GNU C Compiler. Genom sitt nära band till Unix är det alldeles ypperligt lämpat för att överföra program från just Unix till OS/2, men kan även användas för att utveckla en helt ny OS/2-nativ applikation utan bakgrund i Unix. Eftersom EMX kan vara aningen klurig att sätta sig in i, tänkte jag lite kvickt försöka att visa vad de olika delarna egentligen gör och hur man gör ett enkelt program. Vi börjar med en kvick beskrivning av de olika delarna.

Vad du bör ladda ner

Det finns fem filer som är absolut grundläggande, och som du måste ladda ner för att kunna göra något över huvud taget. Dessa är:

Nu kan du göra fullt fungerande program i C. Andra nyttiga tillägg är:

Packa nu upp alla filerna, men var noga med att emxfix04.zip installeras sist. File make.zip ska vi särbehandla lite. Den innehåller nämligen alldeles för mycket skrot, och vi är bara ute efter en exe-fil som finns djupt där inne. Packa därför upp den i en separat katalog och leta bland exe-filerna för att hitta versionen för OS/2. Kopiera den till emx/bin/make.exe så är den klar att användas. Läs nu emx/doc/install.doc för att få reda på vilka variabler som ska skrivas in i Config.sys så att EMX kan fungera riktigt. Starta om OS/2 och du kan börja programmera.

Enkelt användande av GCC

GCC är ganska simpelt att använda, även om det går att krångla till det på fler sätt än det går att tänka ut. För att exempelvis kompilera den berömda filen hello.c skriver du bara:

gcc hello.c

Detta ger dig en fil med namnet hello.exe som belöning. Om du bara vill kompilera filen och inte skapa någon exe-fil blir kommandot:

gcc -c hello.c

Resultatet blir nu en objektfil som heter hello.o och som inte går att köra. Mycket användbart när du använder dig av make-filer för att underhålla ett projekt. Om du senare vill länka ihop den filen och en annan objektfil blir kommandot helt enkelt:

gcc world.o hello.o

Vips har du en färdig exe-fil som heter world.exe färdig att köras.