Trousse de survie, programmer sous Unix

Ce document est disponible à l'URL http://www.enseignement.polytechnique.fr/profs/informatique/Luc.Maranget/TC/X.97/docs/unix.html

1  Je n'ai pas mon PC

Ce n'est pas si grave (essayez tout de même de le récupérer rapidement). Vous allez pouvoir faire le TP sur station, sous Unix.

1.1  Préliminaires

Commencez par vous loger sur une des stations de la salle de TP. Évidemment, il faut se souvenir de votre mot de passe. Vous avez ensuite droit à un superbe écran, pleins d'icônes. Vous pouvez commencer par lancer Netscape (icône), un click suffit. Vous pouvez ensuite lire ce document ou la toujours utile annexe A du petit livre vert. Et d'ailleurs quand vous aurez le temps, allez voir les nombreux chapitres du petit livre vert consacrés à Unix.

Ensuite, ouvrez une fenêtre sur poly ou localement (par un des menus accessibles à partir d'un des boutons de la souris, dès que l'on pointe en dehors des fenêtres).

Positionnez la souris dans cette fenêtre, vous y disposer d'un environnement de commandes analogue à celui de la fenêtre Commandes MS-DOS de votre PC. La principale différence est que vous parlez à Unix et non plus à MS-DOS. Vous disposer d'une édition en ligne qui permet de taper les commandes plus vite. Lorsque vous tapez des caractères, ils s'affichent à l'écran et finissent par former une commande que vous envoyez par la touche Enter. Si vous vous trompez, ou voulez recommencer une commande déjà exécutée, inutile de tout retaper, vous pouvez entrer les combinaisons de touches suivantes :
  1. Ctrl-b Reculer dans la ligne de commande courante.
  2. Ctrl-f Avancer dans la ligne de commande courante.
  3. Ctrl-d Effacer le caractère à droite du curseur.
  4. Backspace Effacer le caractère à gauche du curseur.
  5. Tab Complétion automatique des commandes et noms de fichiers.
  6. Ctrl-p Commande précédente dans l'historique de vos commandes.
  7. Ctrl-n Commande suivante dans l'historique.
. Commencez donc par créer un répertoire de travail pour ce TD (mkdir TD-1, par exemple) et par vous positionner dans ce répertoire (cd TD-1).

2  Édition de fichiers, compilation

Sous Unix les étapes de la compilation d'un programme sont beaucoup plus élémentaires que sous Borland C++. Pourtant, les choses sont finalement plus simples...

Pour créer, puis modifier un fichier on utilise in éditeur de texte. Choisissez par exemple xedit et lancer le sur un fichier demo.c par la commande xedit demo.c &. Le ``&'' sert à lancer l'éditeur en arrière-plan, c'est à dire à récupérer la main pour les commandes suivantes immédiatement. Si vous l'avez oublié, pas de panique, les commandes et combinaisons de touches suivantes vous donnent accès au contrôle des processus :
  1. Ctrl-Z Interrompre la commande en cours.
  2. Ctrl-C Arrêter définitivement la commande en cours.
  3. fg Relancer la commande interrompue en avant-plan.
  4. bg Relancer la commande interrompue en arrière-plan.
De sorte que la séquence xedit demo.c...Ctrl-Z...bg a le même effet que xedit demo.c &.

Une fois demo.c édité et sauvé (voir les icônes de xedit), on compile le programme par la commande gcc demo.c. Là, il y a deux cas, soit il y a des erreurs, et il faut les corriger ; soit un exécutable est produit. Cet exécutable s'appelle a.out, on le lance simplement par la commande a.out.

Le monde est vaste et Unix aussi, il est également possible d'utiliser un éditeur plus sophistiqué emacs. Il devient alors possible de lancer compilations et debugger à partir de l'éditeur. Mais c'est une autre histoire, assez longue.

3  Programmes graphiques (sur poly uniquement)

Comme sur le PC, il va falloir indiquer au compilateur où trouver l'en-tête MacLib.h et la librairie maclib.a. Cette partie sera complétée ultérieurement.

4  Avant de partir

Ne pas oublier de faire le compte-rendu du TP.
  1. Rédiger le compte-rendu avec xedit. Il peut suffire d'envoyer un fichier source C, avec quelques commentaires.
  2. Changer le nom du fichier, par mv demo.c Nom.Prenom
  3. Autoriser la lecture du fichier, par chmod a+r Nom.Prenom.
  4. Copier le fichier chez moi, par cp Nom.Prenom /users/profs/maranget/TD-1.
Pour sortir d'Unix, trouver Déconnexion, quelque part dans les menus.


Ce document a été traduit de LATEX par HEVEA.