Je précise que je ne connais rien à la programmation (hors xhtml/css)
Je commence (depuis peu) à me familiariser avec vim et je souhaite donc l’utiliser en lieu et place d’IDE, la coloration syntaxique et l’indentation auto sont en place, je sèche au niveau de la compilation :
j’ai mon fichier main.c qui contient le code, mais :make me renvoit l’erreur suivante :
Appuyez sur ENTRÉE ou tapez une commande pour continuer
make: *** Pas de cibles spécifiées et aucun makefile n'a été trouvé. Arrêt.
Est ce que je dois créer un makefile à la main ou me manque-t-il un paquet ?
Quel debugger me conseillez vous ?
Alors oui, il te faut créer un Makefile à la main, avec des règles dedans.
Par exemple, une règle all, qui compilera tout.
une autre règle clean, pour virer les anciens binaires…
Je ne suis as très doué en C pour vraiment t’aider. MisterFreez a quelquefois parlé de compiler avec une certaine option afin de voir avec gdb. Il y a un truc aussi qui commence pas V pour voir l’occupation de la mémoire… Attends que quelqu’un de plus doué passe par là
C’est d’ailleurs parce que je ne savais vraiment avec quelle commande compilé que je me suis tourné vers le python. Mais si tu as du temps devant toi, faire du C donnera des programmes avec de meilleures performances.
Afin de pouvoir utiliser un débugueur, tu dois utiliser l’option -g de gcc à la compilation de ton programme.
Tu parles du programme valgrind?
Sinon, concernant la commande make, tant que ton programme reste simple tu peux utiliser les règles implicites afin de le compiler. Si tu as juste un fichier main.c, tu peux faire :mak main
La commande à exécuter est :make main, si tu mets main.c tu dis à make que tu souhaites crée la cible main.c alors que ce fichier existe déjà. Sinon, la commande sh permet d’exécuter un script bash, pour exécuter un programme la commande est ./nom_du_programme
J’ai lu vite fait. Pour compiler un programme d’un seul fichier avec make sous vim la commande la plus générique et la plus simple c’est :
Expliquations :
[ul]
[li]main avec le nom du programme que tu veut générer va chercher le même nom avec l’extension .c, .cpp (probablement .cc et .c++ et il doit aussi le faire avec le fortran) pour le compiler et donner l’exécutable[/li]
[li]% représente le nom du fichier en cours d’édition (celui du buffer courant)[/li]
[li]:r permet de retirer l’extension[/li][/ul]
Donc ça ça peut s’utiliser sans créer de fichier Makefile. Si tu as a ajouter des options il faut :
[ul]
[li]soit positionner les variables d’environnement CFLAGS ou LDFLAGS en conséquence[/li]
[li]soit créer un makefile avec la déclaration des variables adéquates dedans[/li][/ul]