[prog-compil-link-execution en C, sous linux]

Résolu
ninjazen Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   -
Salut tout le monde !
GRAND MERCI de bien vouloir m'aider !
Mon problème est de savoir comment arrrive-t-on à compiler et exécuter (build all) un prog écrit en langage C ou C++ sous 'LINUX Mandrake10.1' ; L'édition pouvant se faire d'après ce que j'ai remarqué sous n'importe quel éditeur de texte (Kwrite,...) , étant donné que d'après certains , le compilateur C (C++) est fourni en standard avec LINUX et UNIX . J'ai essayé d'exécuter des 'Fichier.C' et 'Fichier.cpp' sous LINUX mais en vain ! Et ce en exécutant la commande 'cc Fichier.c(pp)' !!!
P.S: Je trouve que les efforts fournis par tous ceux qui partagent leur 'temps' et leur 'savoir' si genéreusement avec les autres à travers ce site marveilleux méritent les respects les plus profonds !!
A voir également:

7 réponses

marc[i1] Messages postés 2573 Date d'inscription   Statut Contributeur Dernière intervention   382
 
Salut,

^_^
sous Linux, le compilateur se nomme gcc : http://gcc.gnu.org/

vérifie que tu l'as installé en tapant dans une console :
gcc -v

Pour compiler :)
http://www.commentcamarche.net/forum/affich-1509352-compiler-un-programme-C-sous-Linux

Voilà :)
0
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
gcc -W -Wall -o plop.exe plop.c
g++ -W -Wall -o plop.exe plop.cpp

Note qu'il n'y a que rarement un seul fichier c/c++ mais aussi plein de modules d'où l'interêt de faire un makefile.

Par exemple si tu télécharges des sources d'un programme, tu ne tapes jamais de ligne avec des gcc ou g++ mais :
./configure
make
make install

(les g++/gcc ou autres sont fait durant le make, qui appelle le makefile)
0
[Dal] Messages postés 6205 Date d'inscription   Statut Contributeur Dernière intervention   1 105
 
Salut Nijazen, Mamiemando,

Juste une précision sur l'exemple donné par Mamiemando qui indique l'extension ".exe" (sans doutes pour te permettre de mieux identifier où est spécifié le nom de l'exécutable).

gcc -W -Wall -o plop.exe plop.c

Sous Linux, l'extension ".exe" n'est pas requise (et n'est pas utile). Seules comptent les permissions d'exécution, qui sont réglées par le linker dans ce cas. En résumé :

gcc -W -Wall -o plop plop.c

suffit.

Pour exécuter le fichier "plop", il faudra taper, à partir du répertoire courant :

./plop

Pour voir les permissions du fichier tu tapes :

ls -l plop

Tu verras qu'il comporte une ou plusieurs indications "x" qui indiquent le caractère exécutable.


Dal
0
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Oui tu as raison de préciser Dal :p En fait il faut bien comprendre qu'une extension n'a aucun sens réel, c'est juste par soucis de lisibilité qu'on en mets une.

C'est comme sous windows, les extensions permettent d'associer un fichier et une application, mais rien ne t'empêche d'ouvrir des fichiers avec une autre application (par exemple un son avec un bloc notes). Le résultat est rarement très élégant, mais c'est pour bien insister qu'un fichier n'est jamais qu'une suite de 0 et de 1.

Sous linux, les exécutables on en fait rarement une extension, et quand ils en ont une c'est souvent .bin :p Bon moi je mets .exe mais ça n'engage que moi ;) Si tu veux mettre .plop il n'y a pas de pb ;)

L'important pour un exécutable... c'est d'avoir les droits en exécution :p
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ninjazen Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Très GRAND MERCI les gars !
C'est vraiment sympa !!! ;)
à bientôt , ninjazen .
0
entier
 
Bonsoir à tous,

est ce que quelqu'un pourrais m'indiquer comment en utilise les options -l et -L pour le linkage d'un programme sous Linux (UBUNTO).
0
mamiemando Messages postés 33778 Date d'inscription   Statut Modérateur Dernière intervention   7 884
 
Tu peux t'inspirer de ça
http://www.commentcamarche.net/forum/affich 3984469 opengl 0

Bonne chance
0